This documentation is archived and is not being maintained.

XmlSerializerVersionAttribute Class

Signifies that the code was generated by the serialization infrastructure and can be reused for increased performance, when this attribute is applied to an assembly.

Namespace:  System.Xml.Serialization
Assembly:  System.Xml (in System.Xml.dll)

public sealed class XmlSerializerVersionAttribute : Attribute

The .NET Framework XML serialization infrastructure dynamically generates derivations of XmlSerializer that are optimized to serialize user-defined types. The serializers are stored in assemblies that can be reused for efficient serialization.

The XmlSerializerVersionAttribute attribute stores version information about the parent assembly for which a set of serializers is generated. Later, when the XmlSerializer constructor is called, the infrastructure attempts to locate the pre-generated assembly. If the infrastructure finds an assembly with a matching name, the assembly is loaded and the infrastructure checks XmlSerializerVersionAttribute for a match between the found assembly's version and the current version of the parent assembly. If the version does not match, the found assembly is not used. Instead, a temporary assembly is generated for the serialization.


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