This documentation is archived and is not being maintained.

OnDeserializingAttribute Class

When applied to a method, specifies that the method is called during deserialization of an object.

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

public final class OnDeserializingAttribute extends Attribute

Use the OnDeserializingAttribute to set default values during deserialization. For example, if the type that you are deserializing does not contain a constructor, create a method to set values of any fields in the instance and apply the attribute to the method.

To use the OnDeserializingAttribute, the method must contain a StreamingContext parameter. The attribute marks the method to be called by the serialization infrastructure and the StreamingContext provides additional data about the type of serialization taking place. The usage is shown in the following code:

No code example is currently available or this language may not be supported.

In your code, you can use the word OnDeserializing instead of the longer OnDeserializingAttribute.

The following example applies the OnDeserializedAttribute, OnSerializingAttribute, OnSerializedAttribute, and OnDeserializingAttribute attributes to methods in a class.

No code example is currently available or this language may not be supported.


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

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