https://learn.microsoft.com/en-us/dotnet/api/system.runtime.serialization.iserializationsurrogate?view=netframework-4.0
ISerializationSurrogate Interface (System.Runtime.Serialization) | Microsoft Learn
Implements a serialization surrogate selector that allows one object to perform serialization and deserialization of another.
interfacesystemruntimeserializationmicrosoft