IDataContractSurrogate.GetDeserializedObject Method
During deserialization, returns an object that is a substitute for the specified object.
Assembly: System.Runtime.Serialization (in System.Runtime.Serialization.dll)
Parameters
- obj
- Type: System.Object
The deserialized object to be substituted.
- targetType
- Type: System.Type
The Type that the substituted object should be assigned to.
Return Value
Type: System.ObjectThe substituted deserialized object. This object must be of a type that is serializable by the DataContractSerializer. For example, it must be marked with the DataContractAttribute attribute or other mechanisms that the serializer recognizes.
The following example shows an implementation of the GetDeserializedObject method.
public object GetDeserializedObject(Object obj , Type targetType) { Console.WriteLine("GetDeserializedObject invoked"); // This method is called on deserialization. // If PersonSurrogated is being deserialized... if (obj is PersonSurrogated) { //... use the XmlSerializer to do the actual deserialization. PersonSurrogated ps = (PersonSurrogated)obj; XmlSerializer xs = new XmlSerializer(typeof(Person)); return (Person)xs.Deserialize(new StringReader(ps.xmlData)); } return obj; }
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.