DataContractSerializer Konstruktoren

Definition

Initialisiert eine neue Instanz der DataContractSerializer-Klasse.

Überlädt

Name Beschreibung
DataContractSerializer(Type)

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm verwendet werden, eine Ersatz für die benutzerdefinierte Serialisierung, Parameter, die XmlDictionaryString das XML-Element und den Namespace angeben, die den Inhalt enthalten, und eine Alternative zum Zuordnen xsi:type von Deklarationen zur Laufzeit.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, eine Ersatz für die benutzerdefinierte Serialisierung, das XML-Element und den Namespace, das den Inhalt enthält, und eine Alternative zum Zuordnen xsi:type von Deklarationen zur Laufzeit.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, eine Ersatz für die benutzerdefinierte Serialisierung und Parameter verwendet werden, die XmlDictionaryString das XML-Element und den Namespace angeben, die den Inhalt enthalten.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, ein Ersatz für die benutzerdefinierte Serialisierung und das XML-Element und den Namespace verwendet werden sollen, die den Inhalt enthalten.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm und ein Ersatz für die benutzerdefinierte Serialisierung verwendet werden sollen.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, eine Ersatz für die benutzerdefinierte Serialisierung und eine Alternative für Zuordnungsdeklarationen xsi:type zur Laufzeit verwendet werden sollen.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch das XML-Stammelement und den Namespace in zwei Zeichenfolgenparametern sowie eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

Initialisiert eine neue Instanz der DataContractSerializer Klasse zum Serialisieren oder Deserialisieren eines Objekts des angegebenen Typs mithilfe des XML-Stammelements und namespaces, das über die Parameter des Typs XmlDictionaryStringangegeben wird.

DataContractSerializer(Type, String, String)

Initialisiert eine neue Instanz der DataContractSerializer Klasse zum Serialisieren oder Deserialisieren eines Objekts des angegebenen Typs mithilfe des bereitgestellten XML-Stammelements und Namespaces.

DataContractSerializer(Type, DataContractSerializerSettings)

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs und der angegebenen Einstellungen zu serialisieren oder deserialisieren.

DataContractSerializer(Type, IEnumerable<Type>)

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren, und eine Auflistung bekannter Typen, die im Objektdiagramm vorhanden sein können.

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch das XML-Stammelement und den Namespace in zwei XmlDictionaryString Parametern sowie eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können.

DataContractSerializer(Type)

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren.

public:
 DataContractSerializer(Type ^ type);
public DataContractSerializer(Type type);
new System.Runtime.Serialization.DataContractSerializer : Type -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll.

public static void Constructor1()
{
    // Create an instance of the DataContractSerializer.
    DataContractSerializer ser =
        new DataContractSerializer(typeof(Person));
    // Other code not shown.
}
 Public Shared Sub Constructor1() 
     ' Create an instance of the DataContractSerializer.
     Dim ser As New DataContractSerializer(GetType(Person))

     ' Other code not shown.    
 End Sub

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm verwendet werden, eine Ersatz für die benutzerdefinierte Serialisierung, Parameter, die XmlDictionaryString das XML-Element und den Namespace angeben, die den Inhalt enthalten, und eine Alternative zum Zuordnen xsi:type von Deklarationen zur Laufzeit.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer(Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
XmlDictionaryString

Das XML-Element, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

rootNamespace
XmlDictionaryString

Der Namespace des XML-Elements, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

dataContractResolver
DataContractResolver

Eine Implementierung der DataContractResolverxsi:type Deklarationen zu Datentypen.

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, eine Ersatz für die benutzerdefinierte Serialisierung, das XML-Element und den Namespace, das den Inhalt enthält, und eine Alternative zum Zuordnen xsi:type von Deklarationen zur Laufzeit.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer(Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
String

Das XML-Element, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

rootNamespace
String

Der Namespace des XML-Elements, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

dataContractResolver
DataContractResolver

Eine Implementierung der DataContractResolverxsi:type Deklarationen zu Datentypen.

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, eine Ersatz für die benutzerdefinierte Serialisierung und Parameter verwendet werden, die XmlDictionaryString das XML-Element und den Namespace angeben, die den Inhalt enthalten.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer(Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
XmlDictionaryString

Dies XmlDictionaryString gibt das XML-Element an, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

rootNamespace
XmlDictionaryString

Dies XmlDictionaryString gibt den XML-Namespace des Stamms an.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

Ausnahmen

Die Anzahl der Elemente überschreitet den Maximalwert.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, das XML-Stammelement und der Namespace (als XmlDictionaryString Parameter) und eine Instanz einer Instanz, IEnumerable<T> die die während der Deserialisierung verwendeten Typen enthält. Der Code legt außerdem die ignoreExtensionDataObject Parameter fest und preserveObjectReferences gibt eine Implementierung der true Schnittstelle für die Behandlung von Legacytypen an (Typen, auf die das IDataContractSurrogate Attribut DataContractAttributenicht angewendet wurde). Weitere Informationen finden Sie in der IDataContractSurrogate Dokumentation.

public static void Constructor9()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value,
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);

    // Other code not shown.
}
Public Shared Sub Constructor9() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))
    
    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value, _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
    mySurrogate)

    ' Other code not shown.    

End Sub

Weitere Informationen

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, ein Ersatz für die benutzerdefinierte Serialisierung und das XML-Element und den Namespace verwendet werden sollen, die den Inhalt enthalten.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer(Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
String

Das XML-Element, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

rootNamespace
String

Der Namespace des XML-Elements, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

Ausnahmen

Die Anzahl der Elemente überschreitet den Maximalwert.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, das XML-Stammelement und der Namespace sowie eine Instanz einer IEnumerable<T> Instanz, die die während der Deserialisierung verwendeten Typen enthält. Der Code legt außerdem die ignoreExtensionDataObject Parameter fest und preserveObjectReferences gibt eine Implementierung der true Schnittstelle für die Behandlung von Legacytypen an (Typen, auf die das IDataContractSurrogate Attribut DataContractAttributenicht angewendet wurde). Weitere Informationen finden Sie in der IDataContractSurrogate Dokumentation.

public static void Constructor8()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        @"http://www.contoso.com",
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);

    // Other code not shown.
}
Public Shared Sub Constructor8() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()

    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com", _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
    mySurrogate)

    ' Other code not shown.
End Sub

Weitere Informationen

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm und ein Ersatz für die benutzerdefinierte Serialisierung verwendet werden sollen.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate);
public DataContractSerializer(Type type, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen. Der Standardwert ist der von der Int32.MaxValue-Eigenschaft zurückgegebene Wert.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

Ausnahmen

Die Anzahl der Elemente überschreitet den Maximalwert.

Beispiele

Im folgenden Beispiel wird eine Instanz des Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, und eine Instanz einer Instanz, DataContractSerializer die die bekannten Typen enthalten soll, die während der IEnumerable<T> Serialisierung oder Deserialisierung verwendet werden. Der Code legt außerdem die ignoreExtensionDataObject Parameter fest und preserveObjectReferences gibt eine Implementierung der true Schnittstelle für die Behandlung von Legacytypen an (Typen, auf die das IDataContractSurrogate Attribut DataContractAttributenicht angewendet wurde). Weitere Informationen finden Sie in der IDataContractSurrogate Dokumentation.

public static void Constructor7()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an instance of a class that
    // implements the IDataContractSurrogate interface.
    // The implementation code is not shown here.
    DCSurrogate mySurrogate = new DCSurrogate();

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        knownTypeList,
        64 * 1024,
        true,
        true,
        mySurrogate);
    // Other code not shown.
}
Public Shared Sub Constructor7() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an instance of a class that 
    ' implements the IDataContractSurrogate interface.
    ' The implementation code is not shown here.
    Dim mySurrogate As New DCSurrogate()

    Dim ser As New DataContractSerializer(GetType(Person), _
    knownTypeList, _
    64 * 1064, _
    True, _
    True, _
     mySurrogate)

    ' Other code not shown.
End Sub

Weitere Informationen

Gilt für:

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können, die maximale Anzahl von Diagrammelementen, die serialisiert werden sollen, Parameter, um unerwartete Daten zu ignorieren, ob nicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten im Diagramm, eine Ersatz für die benutzerdefinierte Serialisierung und eine Alternative für Zuordnungsdeklarationen xsi:type zur Laufzeit verwendet werden sollen.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System::Runtime::Serialization::IDataContractSurrogate ^ dataContractSurrogate, System::Runtime::Serialization::DataContractResolver ^ dataContractResolver);
public DataContractSerializer(Type type, System.Collections.Generic.IEnumerable<Type> knownTypes, int maxItemsInObjectGraph, bool ignoreExtensionDataObject, bool preserveObjectReferences, System.Runtime.Serialization.IDataContractSurrogate dataContractSurrogate, System.Runtime.Serialization.DataContractResolver dataContractResolver);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> * int * bool * bool * System.Runtime.Serialization.IDataContractSurrogate * System.Runtime.Serialization.DataContractResolver -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type), maxItemsInObjectGraph As Integer, ignoreExtensionDataObject As Boolean, preserveObjectReferences As Boolean, dataContractSurrogate As IDataContractSurrogate, dataContractResolver As DataContractResolver)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

maxItemsInObjectGraph
Int32

Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden sollen. Der Standardwert ist der von der Int32.MaxValue-Eigenschaft zurückgegebene Wert.

ignoreExtensionDataObject
Boolean

truedie von einer Erweiterung des Typs beim Serialisieren und Deserialisieren bereitgestellten Daten zu ignorieren; andernfalls . false

preserveObjectReferences
Boolean

truenicht standardmäßige XML-Konstrukte zum Beibehalten von Objektverweisdaten verwenden; andernfalls . false

dataContractSurrogate
IDataContractSurrogate

Eine Implementierung des IDataContractSurrogate Serialisierungsprozesses zum Anpassen des Serialisierungsprozesses.

dataContractResolver
DataContractResolver

Eine Implementierung der DataContractResolverxsi:type Deklarationen zu Datentypen.

Hinweise

Warning

Diese Methode ist in Windows Store-Apps nicht verfügbar.

Gilt für:

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

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch das XML-Stammelement und den Namespace in zwei Zeichenfolgenparametern sowie eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer(Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer(Type type, string rootName, string rootNamespace, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String, knownTypes As IEnumerable(Of Type))

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
String

Der Name des Stammelements des Inhalts.

rootNamespace
String

Der Namespace des Stammelements.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die Typen enthält, die im Objektdiagramm vorhanden sein können.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, sowie den XML-Namen und den Namespace, aus dem gelesen oder in das XML-Dokument geschrieben werden soll. Der Code erstellt außerdem eine Instanz eines, IEnumerable<T> das die bekannten Typen enthält, die während der Serialisierung oder Deserialisierung verwendet werden.

public static void Constructor5()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        @"http://www.contoso.com",
        knownTypeList);

    // Other code not shown.
}
Public Shared Sub Constructor5() 

    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com", _
    knownTypeList)

    ' Other code not shown.

End Sub

Weitere Informationen

Gilt für:

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse zum Serialisieren oder Deserialisieren eines Objekts des angegebenen Typs mithilfe des XML-Stammelements und namespaces, das über die Parameter des Typs XmlDictionaryStringangegeben wird.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace);
public DataContractSerializer(Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
XmlDictionaryString

Ein XmlDictionaryString Element, das den Stammelementnamen des Inhalts enthält.

rootNamespace
XmlDictionaryString

Eine XmlDictionaryString , die den Namespace des Stammelements enthält.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, sowie den XML-Namen und namespace (als XmlDictionaryString Objekte), aus dem gelesen oder in das XML-Dokument geschrieben werden soll.

public static void Constructor4()
{
    // Create an instance of the DataContractSerializer
    // specifying the type, and name and
    // namespace as XmlDictionaryString objects.

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    // Create the serializer.
    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value);
    // Other code not shown.
}
Public Shared Sub Constructor4() 
    ' Create an instance of the DataContractSerializer
    ' specifying the type, and name and 
    ' namespace as XmlDictionaryString objects.
    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    ' Create the serializer.
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value)

    ' Other code not shown.
End Sub

Gilt für:

DataContractSerializer(Type, String, String)

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse zum Serialisieren oder Deserialisieren eines Objekts des angegebenen Typs mithilfe des bereitgestellten XML-Stammelements und Namespaces.

public:
 DataContractSerializer(Type ^ type, System::String ^ rootName, System::String ^ rootNamespace);
public DataContractSerializer(Type type, string rootName, string rootNamespace);
new System.Runtime.Serialization.DataContractSerializer : Type * string * string -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As String, rootNamespace As String)

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
String

Der Name des XML-Elements, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

rootNamespace
String

Der Namespace des XML-Elements, das den Inhalt umschließt, um den Inhalt zu serialisieren oder deserialisieren.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, sowie den XML-Namen und den Namespace, aus dem gelesen oder in das XML-Dokument geschrieben werden soll.

public static void Constructor3()
{
    // Create an instance of the DataContractSerializer
    // specifying the type, and name and
    // namespace as strings.
    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        "Customer",
        "http://www.contoso.com");

    // Other code not shown.
}
Public Shared Sub Constructor3() 
    ' Create an instance of the DataContractSerializer
    ' specifying the type, and name and 
    ' namespace as strings.
    Dim ser As New DataContractSerializer(GetType(Person), _
    "Customer", _
    "http://www.contoso.com")

    ' Other code not shown.
End Sub

Gilt für:

DataContractSerializer(Type, DataContractSerializerSettings)

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs und der angegebenen Einstellungen zu serialisieren oder deserialisieren.

public:
 DataContractSerializer(Type ^ type, System::Runtime::Serialization::DataContractSerializerSettings ^ settings);
public DataContractSerializer(Type type, System.Runtime.Serialization.DataContractSerializerSettings settings);
public DataContractSerializer(Type type, System.Runtime.Serialization.DataContractSerializerSettings? settings);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Runtime.Serialization.DataContractSerializerSettings -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, settings As DataContractSerializerSettings)

Parameter

type
Type

Der Typ der Instanz, die serialisiert oder deserialisiert werden soll.

settings
DataContractSerializerSettings

Die Serialisierungseinstellungen.

Gilt für:

DataContractSerializer(Type, IEnumerable<Type>)

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren, und eine Auflistung bekannter Typen, die im Objektdiagramm vorhanden sein können.

public:
 DataContractSerializer(Type ^ type, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer(Type type, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer(Type type, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, knownTypes As IEnumerable(Of Type))

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die Typen enthält, die im Objektdiagramm vorhanden sein können.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, und eine Auflistung bekannter Typen, die im Objektdiagramm verwendet werden können.

public static void Constructor2()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create a DatatContractSerializer with the collection.
    DataContractSerializer ser2 = new DataContractSerializer(
        typeof(Orders), knownTypeList);

    // Other code not shown.
}
 Public Shared Sub Constructor2() 

     ' Create a generic List of types and add the known types
     ' to the collection.
     Dim knownTypeList As New List(Of Type)
     knownTypeList.Add(GetType(PurchaseOrder))
     knownTypeList.Add(GetType(PurchaseOrderV3))
     
     ' Create a DatatContractSerializer with the collection.
     Dim ser2 As New DataContractSerializer(GetType(Orders), knownTypeList)

     ' Other code not shown.
End Sub

Weitere Informationen

Gilt für:

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

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

Initialisiert eine neue Instanz der DataContractSerializer Klasse, um ein Objekt des angegebenen Typs zu serialisieren oder deserialisieren. Diese Methode gibt auch das XML-Stammelement und den Namespace in zwei XmlDictionaryString Parametern sowie eine Liste bekannter Typen an, die im Objektdiagramm vorhanden sein können.

public:
 DataContractSerializer(Type ^ type, System::Xml::XmlDictionaryString ^ rootName, System::Xml::XmlDictionaryString ^ rootNamespace, System::Collections::Generic::IEnumerable<Type ^> ^ knownTypes);
public DataContractSerializer(Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type> knownTypes);
public DataContractSerializer(Type type, System.Xml.XmlDictionaryString rootName, System.Xml.XmlDictionaryString rootNamespace, System.Collections.Generic.IEnumerable<Type>? knownTypes);
new System.Runtime.Serialization.DataContractSerializer : Type * System.Xml.XmlDictionaryString * System.Xml.XmlDictionaryString * seq<Type> -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type, rootName As XmlDictionaryString, rootNamespace As XmlDictionaryString, knownTypes As IEnumerable(Of Type))

Parameter

type
Type

Der Typ der Instanzen, die serialisiert oder deserialisiert werden.

rootName
XmlDictionaryString

Ein XmlDictionaryString Element, das den Stammelementnamen des Inhalts enthält.

rootNamespace
XmlDictionaryString

Eine XmlDictionaryString , die den Namespace des Stammelements enthält.

knownTypes
IEnumerable<Type>

Ein IEnumerable<T> Wert, der Type die bekannten Typen enthält, die im Objektdiagramm vorhanden sein können.

Beispiele

Im folgenden Beispiel wird eine Instanz des DataContractSerializer Typs erstellt, der den Typ angibt, der serialisiert oder deserialisiert werden soll, sowie den XML-Namen und namespace (als XmlDictionaryString Objekte), aus dem gelesen oder in das XML-Dokument geschrieben werden soll. Der Code erstellt außerdem eine Instanz eines, IEnumerable<T> das die bekannten Typen enthält, die während der Serialisierung oder Deserialisierung verwendet werden.

public static void Constructor6()
{
    // Create a generic List of types and add the known types
    // to the collection.
    List<Type> knownTypeList = new List<Type>();
    knownTypeList.Add(typeof(PurchaseOrder));
    knownTypeList.Add(typeof(PurchaseOrderV3));

    // Create an XmlDictionary and add values to it.
    XmlDictionary d = new XmlDictionary();
    XmlDictionaryString name_value = d.Add("Customer");
    XmlDictionaryString ns_value = d.Add("http://www.contoso.com");

    DataContractSerializer ser =
        new DataContractSerializer(
        typeof(Person),
        name_value,
        ns_value,
        knownTypeList);

    // Other code not shown.
}
Public Shared Sub Constructor6() 
    ' Create a generic List of types and add the known types
    ' to the collection.
    Dim knownTypeList As New List(Of Type)
    knownTypeList.Add(GetType(PurchaseOrder))
    knownTypeList.Add(GetType(PurchaseOrderV3))

    ' Create an XmlDictionary and add values to it.
    Dim d As New XmlDictionary()
    Dim name_value As XmlDictionaryString = d.Add("Customer")
    Dim ns_value As XmlDictionaryString = d.Add("http://www.contoso.com")
    
    Dim ser As New DataContractSerializer(GetType(Person), _
    name_value, _
    ns_value, _
    knownTypeList)

    ' Other code not shown.
 End Sub

Weitere Informationen

Gilt für: