XmlSerializer.Deserialize メソッド

定義

XML ドキュメントを逆シリアル化します。Deserializes an XML document.

オーバーロード

Deserialize(Stream)

指定した Stream に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified Stream.

Deserialize(TextReader)

指定した TextReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified TextReader.

Deserialize(XmlSerializationReader)

指定した XmlSerializationReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified XmlSerializationReader.

Deserialize(XmlReader)

指定した XmlReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified XmlReader.

Deserialize(XmlReader, String)

指定した XmlReader に格納されている XML ドキュメントを、指定したエンコード スタイルを使用して逆シリアル化します。Deserializes the XML document contained by the specified XmlReader and encoding style.

Deserialize(XmlReader, XmlDeserializationEvents)

指定した XmlReader に格納されている XML ドキュメントを逆シリアル化します。また、逆シリアル化で発生するイベントのオーバーライドを可能にします。Deserializes an XML document contained by the specified XmlReader and allows the overriding of events that occur during deserialization.

Deserialize(XmlReader, String, XmlDeserializationEvents)

指定した XmlReader に格納されているデータを使用してオブジェクトを逆シリアル化します。Deserializes the object using the data contained by the specified XmlReader.

Deserialize(Stream)

指定した Stream に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified Stream.

public:
 System::Object ^ Deserialize(System::IO::Stream ^ stream);
public object Deserialize (System.IO.Stream stream);
member this.Deserialize : System.IO.Stream -> obj

パラメーター

stream
Stream

逆シリアル化する XML ドキュメントを格納している StreamThe Stream that contains the XML document to deserialize.

戻り値

逆シリアル化される ObjectThe Object being deserialized.

次の例では、Stream オブジェクトを使用してオブジェクトを逆シリアル化します。The following example deserializes an object using a Stream object.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml::Serialization;

// This is the class that will be deserialized.
public ref class OrderedItem
{
public:

    [XmlElement(Namespace="http://www.cpandl.com")]
    String^ ItemName;

    [XmlElement(Namespace="http://www.cpandl.com")]
    String^ Description;

    [XmlElement(Namespace="http://www.cohowinery.com")]
    Decimal UnitPrice;

    [XmlElement(Namespace="http://www.cpandl.com")]
    int Quantity;

    [XmlElement(Namespace="http://www.cohowinery.com")]
    Decimal LineTotal;

    // A custom method used to calculate price per item.
    void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
};

void DeserializeObject(String^ filename)
{
    Console::WriteLine("Reading with Stream");

    // Create an instance of the XmlSerializer.
    XmlSerializer^ serializer = gcnew XmlSerializer(OrderedItem::typeid);

    // Declare an object variable of the type to be deserialized.
    OrderedItem^ i;
    
    // Reading the XML document requires a FileStream.
    Stream^ reader = gcnew FileStream(filename, FileMode::Open);

    try
    {
        // Call the Deserialize method to restore the object's state.
        i = dynamic_cast<OrderedItem^>(serializer->Deserialize(reader));
    }
    finally
    {
        delete reader;
    }

    // Write out the properties of the object.
    Console::Write("{0}\t{1}\t{2}\t{3}\t{4}", i->ItemName, i->Description, i->UnitPrice, i->Quantity, i->LineTotal);
}

int main()
{
    // Read a purchase order.
    DeserializeObject( "simple.xml" );
}
using System;
using System.IO;
using System.Xml.Serialization;

// This is the class that will be deserialized.
public class OrderedItem
{
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public string ItemName;
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public string Description;
    [XmlElement(Namespace="http://www.cohowinery.com")]
    public decimal UnitPrice;
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public int Quantity;
    [XmlElement(Namespace="http://www.cohowinery.com")]
    public decimal LineTotal;
    // A custom method used to calculate price per item.
    public void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
}
 
public class Test
{
    public static void Main()
    {
        Test t = new Test();
        // Read a purchase order.
        t.DeserializeObject("simple.xml");
    }

    private void DeserializeObject(string filename)
    {   
        Console.WriteLine("Reading with Stream");
        // Create an instance of the XmlSerializer.
        XmlSerializer serializer = 
        new XmlSerializer(typeof(OrderedItem));
          
        // Declare an object variable of the type to be deserialized.
        OrderedItem i;

        using (Stream reader = new FileStream(filename, FileMode.Open))
        {
            // Call the Deserialize method to restore the object's state.
            i = (OrderedItem)serializer.Deserialize(reader);          
        }

        // Write out the properties of the object.
        Console.Write(
        i.ItemName + "\t" +
        i.Description + "\t" +
        i.UnitPrice + "\t" +
        i.Quantity + "\t" +
        i.LineTotal);
    }
}

Imports System.IO
Imports System.Xml.Serialization

' This is the class that will be deserialized.
Public Class OrderedItem
    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public ItemName As String

    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public Description As String
    
    <XmlElement(Namespace := "http://www.cohowinery.com")> _
    Public UnitPrice As Decimal
    
    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public Quantity As Integer
    
    <XmlElement(Namespace := "http://www.cohowinery.com")> _
    Public LineTotal As Decimal
    
    'A custom method used to calculate price per item.
    Public Sub Calculate()
        LineTotal = UnitPrice * Quantity
    End Sub
End Class

Public Class Test
    
    Public Shared Sub Main()
        Dim t As New Test()
        ' Read a purchase order.
        t.DeserializeObject("simple.xml")
    End Sub
        
    Private Sub DeserializeObject(ByVal filename As String)
        Console.WriteLine("Reading with Stream")
        ' Create an instance of the XmlSerializer.
        Dim serializer As New XmlSerializer(GetType(OrderedItem))       
        
        ' Declare an object variable of the type to be deserialized.
        Dim i As OrderedItem

        Using reader As New Filestream(filename, FileMode.Open)

            ' Call the Deserialize method to restore the object's state.
            i = CType(serializer.Deserialize(reader), OrderedItem)
        End Using

        ' Write out the properties of the object.
        Console.Write(i.ItemName & ControlChars.Tab & _
                      i.Description & ControlChars.Tab & _
                      i.UnitPrice & ControlChars.Tab & _
                      i.Quantity & ControlChars.Tab & _
                      i.LineTotal)
    End Sub
End Class

<?xml version="1.0"?>
 <OrderedItem xmlns:inventory="http://www.cpandl.com" xmlns:money="http://www.cohowinery.com">
   <inventory:ItemName>Widget</inventory:ItemName>
   <inventory:Description>Regular Widget</inventory:Description>
   <money:UnitPrice>2.3</money:UnitPrice>
   <inventory:Quantity>10</inventory:Quantity>
   <money:LineTotal>23</money:LineTotal>
 </OrderedItem>

注釈

逆シリアル化とは、XML ドキュメントを読み取り、ドキュメントの XML スキーマ (XSD) に厳密に型指定されたオブジェクトを構築するプロセスです。Deserialization is the process of reading an XML document and constructing an object that is strongly typed to the XML Schema (XSD) of the document.

逆シリアル化する前に、逆シリアル化されるオブジェクトの型を使用して XmlSerializer を構築する必要があります。Before deserializing, an XmlSerializer must be constructed using the type of the object that is being deserialized.

stream パラメーターを使用して、ストリームに書き込むように設計された Stream クラスから派生するオブジェクトを指定します。Use the stream parameter to specify an object that derives from the Stream class, which is designed to write to streams. Stream クラスから派生するクラスには次のものがあります。Classes that derive from the Stream class include:

注意

XmlSerializer は、ArrayList の配列と List<T>の配列を逆シリアル化できません。The XmlSerializer cannot deserialize the following: arrays of ArrayList and arrays of List<T>.

こちらもご覧ください

Deserialize(TextReader)

指定した TextReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified TextReader.

public:
 System::Object ^ Deserialize(System::IO::TextReader ^ textReader);
public object Deserialize (System.IO.TextReader textReader);
member this.Deserialize : System.IO.TextReader -> obj

パラメーター

textReader
TextReader

逆シリアル化する XML ドキュメントを格納している TextReaderThe TextReader that contains the XML document to deserialize.

戻り値

逆シリアル化される ObjectThe Object being deserialized.

例外

逆シリアル化中にエラーが発生しました。An error occurred during deserialization. 元の例外には、InnerException プロパティを使用してアクセスできます。The original exception is available using the InnerException property.

次の例では、TextReader オブジェクトを使用してオブジェクトを逆シリアル化します。The following example deserializes an object using a TextReader object.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Text;
using namespace System::Xml::Serialization;

// This is the class that will be deserialized.
public ref class OrderedItem
{
public:
    String^ ItemName;
    String^ Description;
    Decimal UnitPrice;
    int Quantity;
    Decimal LineTotal;

    // A custom method used to calculate price per item.
    void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
};

void DeserializeObject( String^ filename )
{
    Console::WriteLine( "Reading with TextReader" );

    // Create an instance of the XmlSerializer specifying type.
    XmlSerializer^ serializer = gcnew XmlSerializer( OrderedItem::typeid );

    /* Create a TextReader to read the file. Specify an
       Encoding to use. */
    TextReader^ reader = gcnew StreamReader( filename,Encoding::Unicode );

    // Declare an object variable of the type to be deserialized.
    OrderedItem^ i;

    // Use the Deserialize method to restore the object's state.
    i = dynamic_cast<OrderedItem^>(serializer->Deserialize( reader ));

    // Write out the properties of the object.
    Console::Write( "{0}\t{1}\t{2}\t{3}\t{4}", i->ItemName, i->Description, i->UnitPrice, i->Quantity, i->LineTotal );
}

int main()
{
    // Read a purchase order.
    DeserializeObject( "simple.xml" );
}
using System;
using System.IO;
using System.Text;
using System.Xml.Serialization;

// This is the class that will be deserialized.
public class OrderedItem
{
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public string ItemName;
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public string Description;
    [XmlElement(Namespace = "http://www.cohowinery.com")]
    public decimal UnitPrice;
    [XmlElement(Namespace = "http://www.cpandl.com")]
    public int Quantity;
    [XmlElement(Namespace = "http://www.cohowinery.com")]
    public decimal LineTotal;
    // A custom method used to calculate price per item.
    public void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
}
 
public class Test
{
   public static void Main()
    {
        Test t = new Test();
        // Read a purchase order.
        t.DeserializeObject("simple.xml");
    }

    private void DeserializeObject(string filename)
    {   
        Console.WriteLine("Reading with TextReader");

        // Create an instance of the XmlSerializer specifying type.
        XmlSerializer serializer = 
        new XmlSerializer(typeof(OrderedItem));

        // Create a TextReader to read the file. 
        FileStream fs = new FileStream(filename, FileMode.OpenOrCreate);
        TextReader reader = new StreamReader(fs);
      
        // Declare an object variable of the type to be deserialized.
        OrderedItem i;

        // Use the Deserialize method to restore the object's state.
        i = (OrderedItem) serializer.Deserialize(reader);

        // Write out the properties of the object.
        Console.Write(
            i.ItemName + "\t" +
            i.Description + "\t" +
            i.UnitPrice + "\t" +
            i.Quantity + "\t" +
            i.LineTotal);
    }
}
Imports System.IO
Imports System.Text
Imports System.Xml.Serialization

' This is the class that will be deserialized.
Public Class OrderedItem
    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public ItemName As String

    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public Description As String
    
    <XmlElement(Namespace := "http://www.cohowinery.com")> _
    Public UnitPrice As Decimal
    
    <XmlElement(Namespace := "http://www.cpandl.com")> _
    Public Quantity As Integer
    
    <XmlElement(Namespace := "http://www.cohowinery.com")> _
    Public LineTotal As Decimal
    ' A custom method used to calculate price per item.
    Public Sub Calculate()
        LineTotal = UnitPrice * Quantity
    End Sub
End Class
Public Class Test
    
    Public Shared Sub Main()
        Dim t As New Test()
        ' Read a purchase order.
        t.DeserializeObject("simple.xml")
    End Sub
    
    Private Sub DeserializeObject(filename As String)
        Console.WriteLine("Reading with TextReader")
        
        ' Create an instance of the XmlSerializer specifying type.
        Dim serializer As New XmlSerializer(GetType(OrderedItem))
        
        ' Create a TextReader to read the file. 
        Dim fs as New FileStream(filename, FileMode.OpenOrCreate)
        Dim reader As New StreamReader(fs)
        
        ' Declare an object variable of the type to be deserialized.
        Dim i As OrderedItem
        
        ' Use the Deserialize method to restore the object's state.
        i = CType(serializer.Deserialize(reader), OrderedItem)
        
        ' Write out the properties of the object.
        Console.Write(i.ItemName & ControlChars.Tab & _
                      i.Description & ControlChars.Tab & _
                      i.UnitPrice & ControlChars.Tab & _
                      i.Quantity & ControlChars.Tab & _
                      i.LineTotal)
    End Sub
End Class

注釈

逆シリアル化とは、XML ドキュメントのインスタンスを読み取り、ドキュメントの XML スキーマ (XSD) に厳密に型指定されたオブジェクトを構築するプロセスです。Deserialization is the process of reading an instance of an XML document and constructing an object that is strongly typed to the XML Schema (XSD) of the document.

逆シリアル化する前に、逆シリアル化されるオブジェクトの型を使用して XmlSerializer を構築する必要があります。Before deserializing, an XmlSerializer must be constructed using the type of the object that is being deserialized.

TextReader から継承するクラスには、StringReaderStreamReaderがあります。Classes that inherit from TextReader include StringReader and StreamReader. オブジェクトを逆シリアル化するために StreamReader を使用する場合は、適切な EncodingStreamReader を構築する必要があります。If you are using a StreamReader to deserialize an object, you must construct the StreamReader with an appropriate Encoding. XML ドキュメントによって指定されたエンコーディングは無視されます。The encoding specified by the XML document is ignored.

注意

XML ドキュメントによって指定されたエンコーディングを使用するには、代わりに XmlReader を受け取る Deserialize オーバーロードを使用します。To use the encoding specified by the XML document, use the Deserialize overload that takes an XmlReader instead. XmlReader は、XML ドキュメントによって指定されたエンコーディングを自動的に検出して使用します。The XmlReader automatically detects and uses the encoding specified by the XML document.

注意

XmlSerializer は、ArrayList の配列と List<T>の配列を逆シリアル化できません。The XmlSerializer cannot deserialize the following: arrays of ArrayList and arrays of List<T>.

こちらもご覧ください

Deserialize(XmlSerializationReader)

指定した XmlSerializationReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified XmlSerializationReader.

protected:
 virtual System::Object ^ Deserialize(System::Xml::Serialization::XmlSerializationReader ^ reader);
protected virtual object Deserialize (System.Xml.Serialization.XmlSerializationReader reader);
abstract member Deserialize : System.Xml.Serialization.XmlSerializationReader -> obj
override this.Deserialize : System.Xml.Serialization.XmlSerializationReader -> obj
Protected Overridable Function Deserialize (reader As XmlSerializationReader) As Object

パラメーター

reader
XmlSerializationReader

逆シリアル化する XML ドキュメントを格納している XmlSerializationReaderThe XmlSerializationReader that contains the XML document to deserialize.

戻り値

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

例外

メソッドが派生クラスでオーバーライドされない場合は、そのメソッドへのアクセスが行われます。Any attempt is made to access the method when the method is not overridden in a descendant class.

Deserialize(XmlReader)

指定した XmlReader に格納されている XML ドキュメントを逆シリアル化します。Deserializes the XML document contained by the specified XmlReader.

public:
 System::Object ^ Deserialize(System::Xml::XmlReader ^ xmlReader);
public object Deserialize (System.Xml.XmlReader xmlReader);
member this.Deserialize : System.Xml.XmlReader -> obj

パラメーター

xmlReader
XmlReader

逆シリアル化する XML ドキュメントを格納している XmlReaderThe XmlReader that contains the XML document to deserialize.

戻り値

逆シリアル化される ObjectThe Object being deserialized.

例外

逆シリアル化中にエラーが発生しました。An error occurred during deserialization. 元の例外には、InnerException プロパティを使用してアクセスできます。The original exception is available using the InnerException property.

次の例では、XmlReaderを使用してオブジェクトを逆シリアル化します。The following example deserializes an object using an XmlReader.

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Text;
using namespace System::Xml;
using namespace System::Xml::Serialization;

// This is the class that will be deserialized.
public ref class OrderedItem
{
public:
    String^ ItemName;
    String^ Description;
    Decimal UnitPrice;
    int Quantity;
    Decimal LineTotal;

    // A custom method used to calculate price per item.
    void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
};

void DeserializeObject( String^ filename )
{
    Console::WriteLine( "Reading with XmlReader" );

    // Create an instance of the XmlSerializer specifying type and namespace.
    XmlSerializer^ serializer = gcnew XmlSerializer( OrderedItem::typeid );

    // A FileStream is needed to read the XML document.
    FileStream^ fs = gcnew FileStream( filename,FileMode::Open );
    XmlReader^ reader = gcnew XmlTextReader( fs );

    // Declare an object variable of the type to be deserialized.
    OrderedItem^ i;

    // Use the Deserialize method to restore the object's state.
    i = dynamic_cast<OrderedItem^>(serializer->Deserialize( reader ));

    // Write out the properties of the object.
    Console::Write( "{0}\t{1}\t{2}\t{3}\t{4}", i->ItemName, i->Description, i->UnitPrice, i->Quantity, i->LineTotal );
}

int main()
{
    // Read a purchase order.
    DeserializeObject( "simple.xml" );
}
using System;
using System.IO;
using System.Text;
using System.Xml;
using System.Xml.Serialization;

// This is the class that will be deserialized.
public class OrderedItem
{
    public string ItemName;
    public string Description;
    public decimal UnitPrice;
    public int Quantity;
    public decimal LineTotal;

    // A custom method used to calculate price per item.
    public void Calculate()
    {
        LineTotal = UnitPrice * Quantity;
    }
}
public class Test
{
    public static void Main(string[] args)
    {
        Test t = new Test();
        // Read a purchase order.
        t.DeserializeObject("simple.xml");
    }

    private void DeserializeObject(string filename)
    {
        Console.WriteLine("Reading with XmlReader");

        // Create an instance of the XmlSerializer specifying type and namespace.
        XmlSerializer serializer = new
        XmlSerializer(typeof(OrderedItem));

        // A FileStream is needed to read the XML document.
        FileStream fs = new FileStream(filename, FileMode.Open);
        XmlReader reader = XmlReader.Create(fs);

        // Declare an object variable of the type to be deserialized.
        OrderedItem i;

        // Use the Deserialize method to restore the object's state.
        i = (OrderedItem)serializer.Deserialize(reader);
        fs.Close();

        // Write out the properties of the object.
        Console.Write(
        i.ItemName + "\t" +
        i.Description + "\t" +
        i.UnitPrice + "\t" +
        i.Quantity + "\t" +
        i.LineTotal);
    }
}
Imports System.IO
Imports System.Text
Imports System.Xml
Imports System.Xml.Serialization

' This is the class that will be deserialized.
Public Class OrderedItem
    Public ItemName As String
    Public Description As String
    Public UnitPrice As Decimal
    Public Quantity As Integer
    Public LineTotal As Decimal
        
    ' A custom method used to calculate price per item.
    Public Sub Calculate()
        LineTotal = UnitPrice * Quantity
    End Sub
End Class

Public Class Test
    
    Public Shared Sub Main()
        Dim t As New Test()
        ' Read a purchase order.
        t.DeserializeObject("simple.xml")
    End Sub
      
    Private Sub DeserializeObject(ByVal filename As String)
        Console.WriteLine("Reading with XmlReader")
        
        ' Create an instance of the XmlSerializer specifying type and namespace.
        Dim serializer As New XmlSerializer(GetType(OrderedItem))
        
        ' A FileStream is needed to read the XML document.
        Dim fs As New FileStream(filename, FileMode.Open)
        Dim reader As XmlReader = XmlReader.Create(fs)
        
        ' Declare an object variable of the type to be deserialized.
        Dim i As OrderedItem
        
        ' Use the Deserialize method to restore the object's state.
        i = CType(serializer.Deserialize(reader), OrderedItem)
        fs.Close()

        ' Write out the properties of the object.
        Console.Write(i.ItemName & ControlChars.Tab & _
                      i.Description & ControlChars.Tab & _
                      i.UnitPrice & ControlChars.Tab & _
                      i.Quantity & ControlChars.Tab & _
                      i.LineTotal)
    End Sub
End Class

<?xml version="1.0"?>
 <OrderedItem xmlns:inventory="http://www.cpandl.com" xmlns:money="http://www.cohowinery.com">
   <inventory:ItemName>Widget</inventory:ItemName>
   <inventory:Description>Regular Widget</inventory:Description>
   <money:UnitPrice>2.3</money:UnitPrice>
   <inventory:Quantity>10</inventory:Quantity>
   <money:LineTotal>23</money:LineTotal>
 </OrderedItem>

注釈

逆シリアル化とは、XML ドキュメントのインスタンスを読み取り、ドキュメントの XML スキーマ (XSD) に厳密に型指定されたオブジェクトを構築するプロセスです。Deserialization is the process of reading an instance of an XML document and constructing an object that is strongly typed to the XML Schema (XSD) of the document.

逆シリアル化する前に、逆シリアル化されるオブジェクトの型を使用して XmlSerializer を構築する必要があります。Before deserializing, an XmlSerializer must be constructed using the type of the object that is being deserialized.

XmlReader は、XML ドキュメントによって指定されたエンコーディングを自動的に検出して使用します。The XmlReader automatically detects and uses the encoding specified by the XML document.

注意

XmlSerializer は、ArrayList の配列と List<T>の配列を逆シリアル化できません。The XmlSerializer cannot deserialize the following: arrays of ArrayList and arrays of List<T>.

こちらもご覧ください

Deserialize(XmlReader, String)

指定した XmlReader に格納されている XML ドキュメントを、指定したエンコード スタイルを使用して逆シリアル化します。Deserializes the XML document contained by the specified XmlReader and encoding style.

public:
 System::Object ^ Deserialize(System::Xml::XmlReader ^ xmlReader, System::String ^ encodingStyle);
public object Deserialize (System.Xml.XmlReader xmlReader, string encodingStyle);
member this.Deserialize : System.Xml.XmlReader * string -> obj

パラメーター

xmlReader
XmlReader

逆シリアル化する XML ドキュメントを格納している XmlReaderThe XmlReader that contains the XML document to deserialize.

encodingStyle
String

シリアル化された XML のエンコード スタイル。The encoding style of the serialized XML.

戻り値

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

例外

逆シリアル化中にエラーが発生しました。An error occurred during deserialization. 元の例外には、InnerException プロパティを使用してアクセスできます。The original exception is available using the InnerException property.

注釈

逆シリアル化とは、XML ドキュメントのインスタンスを読み取り、ドキュメントの XML スキーマ (XSD) に厳密に型指定されたオブジェクトを構築するプロセスです。Deserialization is the process of reading an instance of an XML document and constructing an object that is strongly typed to the XML Schema (XSD) of the document.

逆シリアル化する前に、逆シリアル化されるオブジェクトの型を使用して XmlSerializer を構築する必要があります。Before deserializing, an XmlSerializer must be constructed using the type of the object that is being deserialized.

SOAP version 1.1 encoding の場合は、encodingStyle パラメーターを "http://schemas.xmlsoap.org/soap/encoding/" に設定します。それ以外の場合は、SOAP バージョン1.2 エンコーディングに対して "http://www.w3.org/2001/12/soap-encoding" に設定します。Set the encodingStyle parameter to "http://schemas.xmlsoap.org/soap/encoding/" for SOAP version 1.1 encoding; otherwise, set it to "http://www.w3.org/2001/12/soap-encoding" for SOAP version 1.2 encoding.

メモXmlSerializer は、ArrayList の配列と List<T>の配列を逆シリアル化できません。Note The XmlSerializer cannot deserialize the following: arrays of ArrayList and arrays of List<T>.

こちらもご覧ください

Deserialize(XmlReader, XmlDeserializationEvents)

指定した XmlReader に格納されている XML ドキュメントを逆シリアル化します。また、逆シリアル化で発生するイベントのオーバーライドを可能にします。Deserializes an XML document contained by the specified XmlReader and allows the overriding of events that occur during deserialization.

public:
 System::Object ^ Deserialize(System::Xml::XmlReader ^ xmlReader, System::Xml::Serialization::XmlDeserializationEvents events);
public object Deserialize (System.Xml.XmlReader xmlReader, System.Xml.Serialization.XmlDeserializationEvents events);
member this.Deserialize : System.Xml.XmlReader * System.Xml.Serialization.XmlDeserializationEvents -> obj

パラメーター

xmlReader
XmlReader

逆シリアル化するドキュメントを格納している XmlReaderThe XmlReader that contains the document to deserialize.

events
XmlDeserializationEvents

XmlDeserializationEvents クラスのインスタンス。An instance of the XmlDeserializationEvents class.

戻り値

逆シリアル化される ObjectThe Object being deserialized.

注釈

逆シリアル化されているオブジェクト。The object being deserialized.

Deserialize(XmlReader, String, XmlDeserializationEvents)

指定した XmlReader に格納されているデータを使用してオブジェクトを逆シリアル化します。Deserializes the object using the data contained by the specified XmlReader.

public:
 System::Object ^ Deserialize(System::Xml::XmlReader ^ xmlReader, System::String ^ encodingStyle, System::Xml::Serialization::XmlDeserializationEvents events);
public object Deserialize (System.Xml.XmlReader xmlReader, string encodingStyle, System.Xml.Serialization.XmlDeserializationEvents events);
member this.Deserialize : System.Xml.XmlReader * string * System.Xml.Serialization.XmlDeserializationEvents -> obj

パラメーター

xmlReader
XmlReader

ドキュメントの読み取りに使用される XmlReader クラスのインスタンス。An instance of the XmlReader class used to read the document.

encodingStyle
String

使用されるエンコーディング。The encoding used.

events
XmlDeserializationEvents

XmlDeserializationEvents クラスのインスタンス。An instance of the XmlDeserializationEvents class.

戻り値

逆シリアル化されているオブジェクト。The object being deserialized.

注釈

このメソッドは、Web サービスシナリオでのみ不明なヘッダーを逆シリアル化するために必要です。This method is required for deserialization of unknown headers for Web Service scenarios only. このメソッドを使用すると、Web サービスメソッドでのイベントの同期を回避できます。This method allows you to avoid event synchronization in Web Service methods.

適用対象