This documentation is archived and is not being maintained.

ISerializationSurrogate.SetObjectData Method

Populates the object using the information in the SerializationInfo.

Namespace:  System.Runtime.Serialization
Assembly:  mscorlib (in mscorlib.dll)

[SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
Object SetObjectData(
	Object obj,
	SerializationInfo info,
	StreamingContext context,
	ISurrogateSelector selector


Type: System.Object

The object to populate.

Type: System.Runtime.Serialization.SerializationInfo

The information to populate the object.

Type: System.Runtime.Serialization.StreamingContext

The source from which the object is deserialized.

Type: System.Runtime.Serialization.ISurrogateSelector

The surrogate selector where the search for a compatible surrogate begins.

Return Value

Type: System.Object
The populated deserialized object.


The caller does not have the required permission.

The SetObjectData method is called during deserialization. With this method, you can take the empty Object obj that has already been created, and enter SerializationInfo info data into that object. Constructors are not invoked during deserialization of information and reconstruction of the object.

This method is protected by a SecurityAction.LinkDemand for the SecurityPermission with the SecurityPermissionFlag.SerializationFormatter specified.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0