Freigeben über


DataContractSerializer.ReadObject Methode

Definition

Liest den XML-Stream und gibt das deserialisierte Objekt zurück.

Überlädt

ReadObject(XmlReader)

Liest den XML-Stream mit einem XmlReader und gibt das deserialisierte Objekt zurück.

ReadObject(XmlDictionaryReader, Boolean)

Liest den XML-Stream mit einem XmlDictionaryReader und gibt das deserialisierte Objekt zurück. Zudem wird angegeben, ob vor dem Lesen des Objektwerts der Objektname überprüft wird.

ReadObject(XmlReader, Boolean)

Liest den XML-Stream mit einem XmlReader und gibt das deserialisierte Objekt zurück. Zudem wird angegeben, ob vor dem Lesen des Objektwerts der Objektname überprüft wird.

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

Liest ein XML-Dokument oder einen XML-Dokumentstream und gibt das deserialisierte Objekt zurück. Die Methode enthält einen Parameter, der angibt, ob der Objektname überprüft/validiert wird, sowie einen Resolver zum Zuordnen von xsi:type-Deklarationen zur Laufzeit.

ReadObject(XmlReader)

Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs

Liest den XML-Stream mit einem XmlReader und gibt das deserialisierte Objekt zurück.

public:
 override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader);
public override object ReadObject (System.Xml.XmlReader reader);
public override object? ReadObject (System.Xml.XmlReader reader);
override this.ReadObject : System.Xml.XmlReader -> obj
Public Overrides Function ReadObject (reader As XmlReader) As Object

Parameter

reader
XmlReader

Das XmlReader-Objekt, das zum Lesen des XML-Streams verwendet wird.

Gibt zurück

Das deserialisierte Objekt.

Gilt für:

ReadObject(XmlDictionaryReader, Boolean)

Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs

Liest den XML-Stream mit einem XmlDictionaryReader und gibt das deserialisierte Objekt zurück. Zudem wird angegeben, ob vor dem Lesen des Objektwerts der Objektname überprüft wird.

public:
 override System::Object ^ ReadObject(System::Xml::XmlDictionaryReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName);
public override object? ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlDictionaryReader, verifyObjectName As Boolean) As Object

Parameter

reader
XmlDictionaryReader

Das XmlDictionaryReader-Objekt, das zum Lesen des XML-Streams verwendet wird.

verifyObjectName
Boolean

true, um zu überprüfen, ob der Name des Objekts mit dem im Konstruktor angegebenen Wert des Stammnamens übereinstimmt, andernfalls false.

Gibt zurück

Das deserialisierte Objekt.

Ausnahmen

Für den verifyObjectName-Parameter wurde true festgelegt, und der Name und Namespace des Elements stimmen nicht mit den im Konstruktor angegebenen Werten überein.

Beispiele

In dem folgenden Beispiel wird ein XML-Dokument gelesen und eine Instanz eines Objekts deserialisiert.

public static void ReadObject(string fileName)
{
    Console.WriteLine("Deserializing an instance of the object.");
    FileStream fs = new FileStream(fileName,
    FileMode.Open);
    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);
    reader.Close();
    fs.Close();
    Console.WriteLine(String.Format("{0} {1}, ID: {2}",
    deserializedPerson.FirstName, deserializedPerson.LastName,
    deserializedPerson.ID));
}
Public Shared Sub ReadObject(ByVal fileName As String) 
    Console.WriteLine("Deserializing an instance of the object.")
    Dim fs As New FileStream(fileName, FileMode.Open)
    Dim reader As XmlDictionaryReader = _
        XmlDictionaryReader.CreateTextReader(fs, New XmlDictionaryReaderQuotas())
    Dim ser As New DataContractSerializer(GetType(Person))
    
    ' Deserialize the data and read it from the instance.
    Dim deserializedPerson As Person = CType(ser.ReadObject(reader, True), Person)
    reader.Close()
    fs.Close()
    Console.WriteLine(String.Format("{0} {1}, ID: {2}", deserializedPerson.FirstName, deserializedPerson.LastName, deserializedPerson.ID))
End Sub

Gilt für:

ReadObject(XmlReader, Boolean)

Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs

Liest den XML-Stream mit einem XmlReader und gibt das deserialisierte Objekt zurück. Zudem wird angegeben, ob vor dem Lesen des Objektwerts der Objektname überprüft wird.

public:
 override System::Object ^ ReadObject(System::Xml::XmlReader ^ reader, bool verifyObjectName);
public override object ReadObject (System.Xml.XmlReader reader, bool verifyObjectName);
public override object? ReadObject (System.Xml.XmlReader reader, bool verifyObjectName);
override this.ReadObject : System.Xml.XmlReader * bool -> obj
Public Overrides Function ReadObject (reader As XmlReader, verifyObjectName As Boolean) As Object

Parameter

reader
XmlReader

Das XmlReader-Objekt, das zum Lesen des XML-Streams verwendet wird.

verifyObjectName
Boolean

true, um zu überprüfen, ob der Name des Objekts mit dem im Konstruktor angegebenen Wert des Stammnamens übereinstimmt, andernfalls false.

Gibt zurück

Das deserialisierte Objekt.

Ausnahmen

Für den verifyObjectName-Parameter wurde true festgelegt, und der Name und Namespace des Elements stimmen nicht mit den im Konstruktor angegebenen Werten überein.

Gilt für:

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs
Quelle:
DataContractSerializer.cs

Liest ein XML-Dokument oder einen XML-Dokumentstream und gibt das deserialisierte Objekt zurück. Die Methode enthält einen Parameter, der angibt, ob der Objektname überprüft/validiert wird, sowie einen Resolver zum Zuordnen von xsi:type-Deklarationen zur Laufzeit.

public:
 System::Object ^ ReadObject(System::Xml::XmlDictionaryReader ^ reader, bool verifyObjectName, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public object? ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName, System.Runtime.Serialization.DataContractResolver? dataContractResolver);
public object ReadObject (System.Xml.XmlDictionaryReader reader, bool verifyObjectName, System.Runtime.Serialization.DataContractResolver dataContractResolver);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool * System.Runtime.Serialization.DataContractResolver -> obj
Public Function ReadObject (reader As XmlDictionaryReader, verifyObjectName As Boolean, dataContractResolver As DataContractResolver) As Object

Parameter

reader
XmlDictionaryReader

Der XML-Leser, der zum Lesen des Inhalts verwendet wird.

verifyObjectName
Boolean

true, um den Objektnamen zu überprüfen; anderenfalls false.

dataContractResolver
DataContractResolver

Eine Implementierung des DataContractResolver, um Datenvertragstypen xsi:type-Deklarationen zuzuordnen.

Gibt zurück

Das deserialisierte Objekt.

Gilt für: