This documentation is archived and is not being maintained.

DataContractSerializer.ReadObject Method (XmlDictionaryReader, Boolean)

Reads the XML stream with an XmlDictionaryReader and returns the deserialized object, and also specifies whether a check is made to verify the object name before reading its value.

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

public override Object ReadObject(
	XmlDictionaryReader reader,
	bool verifyObjectName


Type: System.Xml.XmlDictionaryReader
The XmlDictionaryReader used to read the XML stream.
Type: System.Boolean
true to check whether the name of the object corresponds to the root name value supplied in the constructor; otherwise, false.

Return Value

Type: System.Object
The deserialized object.


The verifyObjectName parameter is set to true, and the element name and namespace do not correspond to the values set in the constructor.

The following example reads an XML document and deserializes an instance of an object.

public static void ReadObject(string fileName)
    Console.WriteLine("Deserializing an instance of the object.");
    FileStream fs = new FileStream(fileName,
    XmlDictionaryReader reader =
        XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas());
    DataContractSerializer ser = new DataContractSerializer(typeof(Person));

    // Deserialize the data and read it from the instance.
    Person deserializedPerson =
        (Person)ser.ReadObject(reader, true);
    Console.WriteLine(String.Format("{0} {1}, ID: {2}",
    deserializedPerson.FirstName, deserializedPerson.LastName,

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

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.