DataContractSerializer.ReadObject メソッド

定義

XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。Reads the XML stream and returns the deserialized object.

オーバーロード

ReadObject(XmlReader)

XmlReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。Reads the XML stream with an XmlReader and returns the deserialized object.

ReadObject(XmlDictionaryReader, Boolean)

XmlDictionaryReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。さらに、値を読み取る前にオブジェクト名の検証チェックを行うかどうかを指定します。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.

ReadObject(XmlReader, Boolean)

XmlReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。さらに、値を読み取る前にオブジェクト名の検証チェックを行うかどうかを指定します。Reads the XML stream with an XmlReader and returns the deserialized object, and also specifies whether a check is made to verify the object name before reading its value.

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

XML ドキュメントまたはドキュメント ストリームを読み取り、逆シリアル化されたオブジェクトを返します。Reads an XML document or document stream and returns the deserialized object. メソッドには、オブジェクト名を検証するかどうかを指定するパラメーター、および実行時の xsi:type 宣言のマッピングに使用するリゾルバーが含まれます。The method includes a parameter to specify whether the object name is verified is validated, and a resolver for mapping xsi:type declarations at runtime.

ReadObject(XmlReader)

XmlReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。Reads the XML stream with an XmlReader and returns the deserialized object.

public:
 override System::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

パラメーター

reader
XmlReader

XML ストリームを読み取るために使用する XmlReaderThe XmlReader used to read the XML stream.

戻り値

逆シリアル化されたオブジェクト。The deserialized object.

ReadObject(XmlDictionaryReader, Boolean)

XmlDictionaryReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。さらに、値を読み取る前にオブジェクト名の検証チェックを行うかどうかを指定します。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.

public:
 override System::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

パラメーター

reader
XmlDictionaryReader

XML ストリームを読み取るために使用する XmlDictionaryReaderThe XmlDictionaryReader used to read the XML stream.

verifyObjectName
Boolean

コンストラクター内で提供されたルートの名前値にオブジェクトの名前が対応するかどうかをチェックする場合は true。それ以外の場合は falsetrue to check whether the name of the object corresponds to the root name value supplied in the constructor; otherwise, false.

戻り値

逆シリアル化されたオブジェクト。The deserialized object.

例外

verifyObjectName パラメーターが true に設定されており、要素名と名前空間がコンストラクター内の値と対応しません。The verifyObjectName parameter is set to true, and the element name and namespace do not correspond to the values set in the constructor.

次の例では、XML ドキュメントを読み取り、オブジェクトのインスタンスを逆シリアル化します。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,
    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 

ReadObject(XmlReader, Boolean)

XmlReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。さらに、値を読み取る前にオブジェクト名の検証チェックを行うかどうかを指定します。Reads the XML stream with an XmlReader and returns the deserialized object, and also specifies whether a check is made to verify the object name before reading its value.

public:
 override System::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

パラメーター

reader
XmlReader

XML ストリームを読み取るために使用する XmlReaderThe XmlReader used to read the XML stream.

verifyObjectName
Boolean

コンストラクター内で提供されたルートの名前値にオブジェクトの名前が対応するかどうかをチェックする場合は true。それ以外の場合は falsetrue to check whether the name of the object corresponds to the root name value supplied in the constructor; otherwise, false.

戻り値

逆シリアル化されたオブジェクト。The deserialized object.

例外

verifyObjectName パラメーターが true に設定されており、要素名と名前空間がコンストラクター内の値と対応しません。The verifyObjectName parameter is set to true, and the element name and namespace do not correspond to the values set in the constructor.

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

XML ドキュメントまたはドキュメント ストリームを読み取り、逆シリアル化されたオブジェクトを返します。Reads an XML document or document stream and returns the deserialized object. メソッドには、オブジェクト名を検証するかどうかを指定するパラメーター、および実行時の xsi:type 宣言のマッピングに使用するリゾルバーが含まれます。The method includes a parameter to specify whether the object name is verified is validated, and a resolver for mapping xsi:type declarations at runtime.

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);
override this.ReadObject : System.Xml.XmlDictionaryReader * bool * System.Runtime.Serialization.DataContractResolver -> obj

パラメーター

reader
XmlDictionaryReader

内容を読み取るために使用する XML リーダー。The XML reader used to read the content.

verifyObjectName
Boolean

オブジェクト名を確認する場合は true。それ以外の場合は falsetrue to verify the object name; otherwise, false.

dataContractResolver
DataContractResolver

DataContractResolver 宣言をデータ コントラクト型にマップする xsi:type の実装。An implementation of the DataContractResolver to map xsi:type declarations to data contract types.

戻り値

逆シリアル化されたオブジェクト。The deserialized object.

適用対象