DataContractSerializer DataContractSerializer DataContractSerializer DataContractSerializer Class

定義

ある型のインスタンスを、提供されたデータ コントラクトを使用して、XML ストリームまたはドキュメントにシリアル化または逆シリアル化します。 このクラスは継承できません。

public ref class DataContractSerializer sealed : System::Runtime::Serialization::XmlObjectSerializer
public sealed class DataContractSerializer : System.Runtime.Serialization.XmlObjectSerializer
type DataContractSerializer = class
    inherit XmlObjectSerializer
Public NotInheritable Class DataContractSerializer
Inherits XmlObjectSerializer
継承
DataContractSerializerDataContractSerializerDataContractSerializerDataContractSerializer

次のコード例は、Person によってシリアル化される DataContractSerializer という名前の型を示しています。 +DataContractAttribute 属性がクラスに適用され、シリアル化の対象を DataMemberAttribute に指示する DataContractSerializer がメンバーに適用されます。

namespace DataContractSerializerExample
{
    using System;
    using System.Collections;
    using System.Collections.Generic;
    using System.Runtime.Serialization;
    using System.Xml;

    // You must apply a DataContractAttribute or SerializableAttribute
    // to a class to have it serialized by the DataContractSerializer.
    [DataContract(Name = "Customer", Namespace = "http://www.contoso.com")]
    class Person : IExtensibleDataObject
    {
        [DataMember()]
        public string FirstName;
        [DataMember]
        public string LastName;
        [DataMember()]
        public int ID;

        public Person(string newfName, string newLName, int newID)
        {
            FirstName = newfName;
            LastName = newLName;
            ID = newID;
        }

        private ExtensionDataObject extensionData_Value;

        public ExtensionDataObject ExtensionData
        {
            get
            {
                return extensionData_Value;
            }
            set
            {
                extensionData_Value = value;
            }
        }
    }

    public sealed class Test
    {
        private Test() { }

        public static void Main()
        {
            try
            {
                WriteObject("DataContractSerializerExample.xml");
                ReadObject("DataContractSerializerExample.xml");

            }

            catch (SerializationException serExc)
            {
                Console.WriteLine("Serialization Failed");
                Console.WriteLine(serExc.Message);
            }
            catch (Exception exc)
            {
                Console.WriteLine(
                "The serialization operation failed: {0} StackTrace: {1}",
                exc.Message, exc.StackTrace);
            }

            finally
            {
                Console.WriteLine("Press <Enter> to exit....");
                Console.ReadLine();
            }
        }

        public static void WriteObject(string fileName)
        {
            Console.WriteLine(
                "Creating a Person object and serializing it.");
            Person p1 = new Person("Zighetti", "Barbara", 101);
            FileStream writer = new FileStream(fileName, FileMode.Create);
            DataContractSerializer ser =
                new DataContractSerializer(typeof(Person));
            ser.WriteObject(writer, p1);
            writer.Close();
        }

        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));
        }
    }
' You must apply a DataContractAttribute or SerializableAttribute
' to a class to have it serialized by the DataContractSerializer.
<DataContract(Name := "Customer", [Namespace] := "http://www.contoso.com")>  _
Class Person
    Implements IExtensibleDataObject
    <DataMember()>  _
    Public FirstName As String
    <DataMember()>  _
    Public LastName As String
    <DataMember()>  _
    Public ID As Integer
    
    Public Sub New(ByVal newfName As String, ByVal newLName As String, ByVal newID As Integer) 
        FirstName = newfName
        LastName = newLName
        ID = newID
    End Sub 
    
    Private extensionData_Value As ExtensionDataObject
    
    Public Property ExtensionData() As ExtensionDataObject Implements _
       IExtensibleDataObject.ExtensionData
        Get
            Return extensionData_Value
        End Get
        Set
            extensionData_Value = value
        End Set
    End Property
End Class 


NotInheritable Public Class Test
    
    Private Sub New() 
    
    End Sub 
     
    Public Shared Sub Main() 
        Try
            WriteObject("DataContractSerializerExample.xml")
            ReadObject("DataContractSerializerExample.xml")
        
        Catch serExc As SerializationException
            Console.WriteLine("Serialization Failed")
            Console.WriteLine(serExc.Message)
        Catch exc As Exception
            Console.WriteLine("The serialization operation failed: {0} StackTrace: {1}", exc.Message, exc.StackTrace)
        
        Finally
            Console.WriteLine("Press <Enter> to exit....")
            Console.ReadLine()
        End Try
    End Sub 
    
    Public Shared Sub WriteObject(ByVal fileName As String) 
        Console.WriteLine("Creating a Person object and serializing it.")
        Dim p1 As New Person("Zighetti", "Barbara", 101)
        Dim writer As New FileStream(fileName, FileMode.Create)
        Dim ser As New DataContractSerializer(GetType(Person))
        ser.WriteObject(writer, p1)
        writer.Close()
    End Sub 

    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 
End Class 

注釈

DataContractSerializer クラスを使用して、ある型のインスタンスを XML ストリームまたはドキュメントにシリアル化または逆シリアル化します。 たとえば、名前や住所などの必須データを含むプロパティを持つ Person という名前の型を作成できます。 その後、Person クラスのインスタンスを作成して操作することで、すべてのプロパティ値を XML ドキュメントに書き込んで後で取得するか、XML ストリームに書き込んで直ちに転送することができます。 最も重要なDataContractSerializerおよび Windows Communication Foundation (WCF) メッセージで送信されるデータを逆シリアル化するために使用します。 DataContractAttribute 属性をクラスに適用し、DataMemberAttribute 属性をクラス メンバーに適用して、シリアル化するプロパティとフィールドを指定します。

シリアル化できる型の一覧は、次を参照してください。型は、データ コントラクト シリアライザーでサポートされているします。

DataContractSerializer を使用するには、形式の書き込みと読み取りに適したクラスのインスタンスとオブジェクトを最初に作成します (例 : XmlDictionaryWriter のインスタンス)。 その後、WriteObject メソッドを呼び出してデータを保持します。 データを取得するには、データ形式の読み取りに適したオブジェクト (XML ドキュメントの場合は XmlDictionaryReader など) を作成し、ReadObject メソッドを呼び出します。

使用しての詳細については、DataContractSerializerを参照してくださいシリアル化および逆シリアル化します。

使用して、データ コントラクト シリアライザーの型を設定することができます、 <dataContractSerializer> クライアント アプリケーションの構成ファイル内の要素。

シリアル化または逆シリアル化用のクラスの準備

DataContractSerializer は、DataContractAttribute クラスおよび DataMemberAttribute クラスと組み合わせて使用します。 シリアル化用のクラスを準備するには、DataContractAttribute をクラスに適用します。 シリアル化するデータを返すクラスの各メンバーに対して、DataMemberAttribute を適用します。 フィールドとプロパティは、アクセシビリティ (プライベート、保護、内部、内部保護、またはパブリック) に関係なくシリアル化できます。

たとえば、Customer プロパティを持つ ID をスキーマで指定したが、Person プロパティを持つ Name が既存のアプリケーションで既に使用されている場合があります。 コントラクトに準拠する型を作成するには、最初に DataContractAttribute をクラスに適用します。 その後、シリアル化するすべてのフィールドまたはプロパティに対して DataMemberAttribute を適用します。

注意

DataMemberAttribute は、プライベート メンバーとパブリック メンバーに適用できます。

XML の最終形式は、テキストである必要はありません。 DataContractSerializer では、データは、XmlReaderXmlWriter によって認識される任意の形式にデータを書き込むことができる XML infoset として書き込まれます。 XmlDictionaryReader クラスと XmlDictionaryWriter クラスは、どちらも DataContractSerializer と連携するように最適化されているため、読み取りと書き込みはこれらのクラスを使用して行うことをお勧めします。

」の説明に従ってにコールバックの属性を使用して、フィールドまたはプロパティをシリアル化する前に設定する必要がありますのあるクラスを作成する、または逆シリアル化が発生した、バージョン トレラントなシリアル化コールバックします。

コレクションへの既知の型の追加

オブジェクトをシリアル化または逆シリアル化する場合は、型が DataContractSerializer にとって "既知" である必要があります。 IEnumerable<T> (List<T> など) を実装するクラスのインスタンスを作成し、既知の型をコレクションに追加することから始めます。 その後、DataContractSerializer (IEnumerable<T> など) を取るいずれかのオーバーロードを使用して、DataContractSerializer(Type, IEnumerable<Type>) のインスタンスを作成します。

注意

他のプリミティブ型とは異なり、DateTimeOffset構造体は既定では、既知の型を既知の型のリストに手動で追加する必要がありますので (を参照してくださいData Contract Known Types)。

上位互換性

DataContractSerializer は、コントラクトの将来のバージョンとの互換性を保つように設計されたデータ コントラクトを理解します。 このような型は、IExtensibleDataObject インターフェイスを実装します。 このインターフェイスは、ExtensionData オブジェクトを返す ExtensionDataObject プロパティを特徴とします。 詳細については、「上位互換性のあるデータ コントラクト」を参照してください。

部分信頼での実行

逆シリアル化中のターゲット オブジェクトのインスタンス化の際に、DataContractSerializer は、ターゲット オブジェクトのコンストラクターを呼び出しません。 作成する場合、 [DataContract] 部分信頼からアクセス可能な型 (つまり、パブリックし、されているアセンブリ内、AllowPartiallyTrustedCallers属性が適用されて) いくつかのセキュリティ関連の操作を実行すると、認識しておく必要がありますをコンス トラクターは呼び出されません。 具体的には、以下の手法が機能しません。

  • コンストラクターを内部またはプライベートにする、または LinkDemand をコンストラクターに追加することにより、部分信頼アクセスを制限しようとしても、部分信頼での逆シリアル化中は、いずれも有効にはなりません。

  • コンストラクターが実行していることを前提とするクラスをプログラムすると、クラスが、攻撃に利用できる、無効な内部状態になる可能性があります。

コンストラクター

DataContractSerializer(Type) DataContractSerializer(Type) DataContractSerializer(Type) DataContractSerializer(Type)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。

DataContractSerializer(Type, DataContractSerializerSettings) DataContractSerializer(Type, DataContractSerializerSettings) DataContractSerializer(Type, DataContractSerializerSettings) DataContractSerializer(Type, DataContractSerializerSettings)

指定した型と設定をシリアル化または逆シリアル化する DataContractSerializer クラスの新しいインスタンスを初期化します。

DataContractSerializer(Type, IEnumerable<Type>) DataContractSerializer(Type, IEnumerable<Type>) DataContractSerializer(Type, IEnumerable<Type>) DataContractSerializer(Type, IEnumerable<Type>)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトと、オブジェクト グラフ内に存在可能な既知の型のコレクションをシリアル化または逆シリアル化します。

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、およびカスタム シリアル化のためのサロゲートを指定します。

DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、カスタム シリアル化のためのサロゲート、および実行時の xsi:type 宣言のマッピングの代替を指定します。

DataContractSerializer(Type, String, String) DataContractSerializer(Type, String, String) DataContractSerializer(Type, String, String) DataContractSerializer(Type, String, String)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトを、指定した XML ルート要素と名前空間を使用してシリアル化または逆シリアル化します。

DataContractSerializer(Type, String, String, IEnumerable<Type>) DataContractSerializer(Type, String, String, IEnumerable<Type>) DataContractSerializer(Type, String, String, IEnumerable<Type>) DataContractSerializer(Type, String, String, IEnumerable<Type>)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、XML ルート要素と名前空間を示す 2 つの文字列パラメーターと、オブジェクト グラフ内に存在可能な既知の型のリストを指定します。

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、カスタム シリアル化のためのサロゲート、およびコンテンツを含む XML 要素と名前空間を指定します。

DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、カスタム シリアル化のためのサロゲート、コンテンツを含む XML 要素と名前空間、および実行時の xsi:type 宣言のマップの代替を指定します。

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトを、XmlDictionaryString のパラメーターを通して指定した XML ルート要素と名前空間を使用してシリアル化または逆シリアル化します。

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、XML ルート要素と名前空間を示す 2 つの XmlDictionaryString パラメーターと、オブジェクト グラフ内に存在可能な既知の型のリストを指定します。

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、カスタム シリアル化のためのサロゲート、およびコンテンツを含む XML 要素と名前空間を指定する XmlDictionaryString のパラメーターを指定します。

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)

DataContractSerializer クラスの新しいインスタンスを初期化し、指定した型のオブジェクトをシリアル化または逆シリアル化します。 このメソッドは、さらに、オブジェクト グラフ内に存在可能な既知の型のリスト、シリアル化するグラフ項目の最大数、予想外のデータを無視するためのパラメーター、グラフ内のオブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうか、カスタム シリアル化のためのサロゲート、コンテンツを含む XML 要素と名前空間を指定する XmlDictionaryString のパラメーター、および実行時の xsi:type 宣言のマップの代替を指定します。

プロパティ

DataContractResolver DataContractResolver DataContractResolver DataContractResolver

既知のコントラクト型に xsi:type 宣言を動的にマップするために使用するコンポーネントを取得します。

DataContractSurrogate DataContractSurrogate DataContractSurrogate DataContractSurrogate

シリアル化または逆シリアル化プロセスを拡張できるサロゲート型を取得します。

IgnoreExtensionDataObject IgnoreExtensionDataObject IgnoreExtensionDataObject IgnoreExtensionDataObject

クラスがシリアル化または逆シリアル化されるときに、そのクラスの拡張により提供されるデータを無視するかどうかを指定する値を取得します。

KnownTypes KnownTypes KnownTypes KnownTypes

DataContractSerializer のこのインスタンスを使用してシリアル化されるオブジェクト グラフ内に存在可能な型のコレクションを取得します。

MaxItemsInObjectGraph MaxItemsInObjectGraph MaxItemsInObjectGraph MaxItemsInObjectGraph

シリアル化または逆シリアル化するオブジェクト グラフ内の項目の最大数を取得します。

PreserveObjectReferences PreserveObjectReferences PreserveObjectReferences PreserveObjectReferences

オブジェクトの参照データを保持するために非標準の XML コンストラクトを使用するかどうかを示す値を取得します。

SerializeReadOnlyTypes SerializeReadOnlyTypes SerializeReadOnlyTypes SerializeReadOnlyTypes

読み取り専用の型をシリアル化するかどうかを指定する値を取得します。

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。

(Inherited from Object)
IsStartObject(XmlDictionaryReader) IsStartObject(XmlDictionaryReader) IsStartObject(XmlDictionaryReader) IsStartObject(XmlDictionaryReader)

逆シリアル化できるオブジェクトに XmlDictionaryReader が配置されているかどうかを決定します。

IsStartObject(XmlReader) IsStartObject(XmlReader) IsStartObject(XmlReader) IsStartObject(XmlReader)

逆シリアル化できるオブジェクトに XmlReader が配置されているかどうかを決定します。

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。

(Inherited from Object)
ReadObject(Stream) ReadObject(Stream) ReadObject(Stream) ReadObject(Stream)

Stream を使用して XML ストリームまたはドキュメントを読み取り、逆シリアル化されたオブジェクトを返します。

(Inherited from XmlObjectSerializer)
ReadObject(XmlDictionaryReader) ReadObject(XmlDictionaryReader) ReadObject(XmlDictionaryReader) ReadObject(XmlDictionaryReader)

XmlDictionaryReader を使用して XML ドキュメントまたはストリームを読み取り、逆シリアル化されたオブジェクトを返します。

(Inherited from XmlObjectSerializer)
ReadObject(XmlDictionaryReader, Boolean) ReadObject(XmlDictionaryReader, Boolean) ReadObject(XmlDictionaryReader, Boolean) ReadObject(XmlDictionaryReader, Boolean)

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

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver) ReadObject(XmlDictionaryReader, Boolean, DataContractResolver) ReadObject(XmlDictionaryReader, Boolean, DataContractResolver) ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

XML ドキュメントまたはドキュメント ストリームを読み取り、逆シリアル化されたオブジェクトを返します。 メソッドには、オブジェクト名を検証するかどうかを指定するパラメーター、および実行時の xsi:type 宣言のマッピングに使用するリゾルバーが含まれます。

ReadObject(XmlReader) ReadObject(XmlReader) ReadObject(XmlReader) ReadObject(XmlReader)

XmlReader を使用して XML ストリームを読み取り、逆シリアル化されたオブジェクトを返します。

ReadObject(XmlReader, Boolean) ReadObject(XmlReader, Boolean) ReadObject(XmlReader, Boolean) ReadObject(XmlReader, Boolean)

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

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。

(Inherited from Object)
WriteEndObject(XmlDictionaryWriter) WriteEndObject(XmlDictionaryWriter) WriteEndObject(XmlDictionaryWriter) WriteEndObject(XmlDictionaryWriter)

XmlDictionaryWriter を使用して、XML の終了要素を書き込みます。

WriteEndObject(XmlWriter) WriteEndObject(XmlWriter) WriteEndObject(XmlWriter) WriteEndObject(XmlWriter)

XmlWriter を使用して、XML の終了要素を書き込みます。

WriteObject(Stream, Object) WriteObject(Stream, Object) WriteObject(Stream, Object) WriteObject(Stream, Object)

Stream を使用して、オブジェクトの完全なコンテンツ (開始、コンテンツ、および終了) を XML ドキュメントまたはストリームに書き込みます。

(Inherited from XmlObjectSerializer)
WriteObject(XmlDictionaryWriter, Object) WriteObject(XmlDictionaryWriter, Object) WriteObject(XmlDictionaryWriter, Object) WriteObject(XmlDictionaryWriter, Object)

XmlDictionaryWriter を使用して、オブジェクトの完全なコンテンツ (開始、コンテンツ、および終了) を XML ドキュメントまたはストリームに書き込みます。

(Inherited from XmlObjectSerializer)
WriteObject(XmlDictionaryWriter, Object, DataContractResolver) WriteObject(XmlDictionaryWriter, Object, DataContractResolver) WriteObject(XmlDictionaryWriter, Object, DataContractResolver) WriteObject(XmlDictionaryWriter, Object, DataContractResolver)

指定した XmlDictionaryWriter を使用して、すべてのオブジェクト データ (XML の開始要素、コンテンツ、外側の要素) を XML ドキュメントまたはストリームに書き込みます。 メソッドには、実行時の xsi:type 宣言のマッピングに使用するリゾルバーが含まれます。

WriteObject(XmlWriter, Object) WriteObject(XmlWriter, Object) WriteObject(XmlWriter, Object) WriteObject(XmlWriter, Object)

XmlWriter を使用して、すべてのオブジェクト データ (XML の開始要素、コンテンツ、終了要素) を XML ドキュメントまたはストリームに書き込みます。

WriteObjectContent(XmlDictionaryWriter, Object) WriteObjectContent(XmlDictionaryWriter, Object) WriteObjectContent(XmlDictionaryWriter, Object) WriteObjectContent(XmlDictionaryWriter, Object)

XmlDictionaryWriter を使用して、XML コンテンツを書き込みます。

WriteObjectContent(XmlWriter, Object) WriteObjectContent(XmlWriter, Object) WriteObjectContent(XmlWriter, Object) WriteObjectContent(XmlWriter, Object)

XmlWriter を使用して、XML コンテンツを書き込みます。

WriteStartObject(XmlDictionaryWriter, Object) WriteStartObject(XmlDictionaryWriter, Object) WriteStartObject(XmlDictionaryWriter, Object) WriteStartObject(XmlDictionaryWriter, Object)

XmlDictionaryWriter を使用して、XML の開始要素を書き込みます。

WriteStartObject(XmlWriter, Object) WriteStartObject(XmlWriter, Object) WriteStartObject(XmlWriter, Object) WriteStartObject(XmlWriter, Object)

XmlWriter を使用して、XML の開始要素を書き込みます。

Extension Methods

GetSerializationSurrogateProvider(DataContractSerializer) GetSerializationSurrogateProvider(DataContractSerializer) GetSerializationSurrogateProvider(DataContractSerializer) GetSerializationSurrogateProvider(DataContractSerializer)

このシリアライザーのサロゲート シリアル化プロバイダーを返します。

SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider) SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider) SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider) SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider)

この DataContractSerializer のサロゲート シリアル化プロバイダーを指定します。

適用対象

スレッド セーフ

このクラスのインスタンスはスレッド セーフの実装のインスタンスを使用する場合を除き、IDataContractSurrogateまたはDataContractResolverします。

こちらもご覧ください