DataContractSerializer Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der DataContractSerializer-Klasse.
Überlädt
DataContractSerializer(Type) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Parameter von XmlDictionaryString, die das XML-Element und den XML-Namespace mit dem Inhalt angeben, sind ebenfalls angegeben. Die Methode enthält außerdem eine Alternative zur Zuordnung von |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Das XML-Element und der XML-Namespace mit dem Inhalt sind ebenfalls angegeben. Die Methode enthält außerdem eine Alternative zur Zuordnung von |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem Parameter des Typs XmlDictionaryString, die 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 genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem das XML-Element und den Namespace, die den Inhalt enthalten. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem eine Alternative zur Zuordnung von |
DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Darüber hinaus gibt diese Methode das XML-Stammelement und den Namespace in zwei Zeichenfolgenparametern sowie eine Liste bekannter Typen, die in dem Objektdiagramm ggf. enthalten sind, an. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs mithilfe des XML-Stammelements und -Namespaces zu serialisieren bzw. zu deserialisieren, das/der durch die Parameter des Typs XmlDictionaryString angegeben wird. |
DataContractSerializer(Type, String, String) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs mithilfe des bereitgestellten XML-Stammelements und -Namespace zu serialisieren bzw. zu deserialisieren. |
DataContractSerializer(Type, DataContractSerializerSettings) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs und Einstellungen zu serialisieren bzw. zu deserialisieren. |
DataContractSerializer(Type, IEnumerable<Type>) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs sowie eine Auflistung bekannter Typen, die im Objektdiagramm vorhanden sind, zu serialisieren bzw. zu deserialisieren. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Darüber hinaus gibt diese Methode das XML-Stammelement und den Namespace in zwei XmlDictionaryString-Parametern sowie eine Liste bekannter Typen, die in dem Objektdiagramm ggf. enthalten sind, an. |
DataContractSerializer(Type)
- Quelle:
- DataContractSerializer.cs
- Quelle:
- DataContractSerializer.cs
- Quelle:
- DataContractSerializer.cs
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu 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
In dem folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ angibt.
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 genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Parameter von XmlDictionaryString, die das XML-Element und den XML-Namespace mit dem Inhalt angeben, sind ebenfalls angegeben. Die Methode enthält außerdem eine Alternative zur Zuordnung von xsi:type
-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 zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- rootNamespace
- XmlDictionaryString
Der Namespace des XML-Elements, das den zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
- dataContractResolver
- DataContractResolver
Eine Implementierung des DataContractResolver, um Datenvertragstypen xsi:type
-Deklarationen zuzuordnen.
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 genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Das XML-Element und der XML-Namespace mit dem Inhalt sind ebenfalls angegeben. Die Methode enthält außerdem eine Alternative zur Zuordnung von xsi:type
-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 zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- rootNamespace
- String
Der Namespace des XML-Elements, das den zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
- dataContractResolver
- DataContractResolver
Eine Implementierung des DataContractResolver, um Datenvertragstypen xsi:type
-Deklarationen zuzuordnen.
Gilt für:
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem Parameter des Typs XmlDictionaryString, die 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
Das XmlDictionaryString-Objekt, das das XML-Element angibt, das den zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- rootNamespace
- XmlDictionaryString
Die XmlDictionaryString, die den XML-Namespace des Stammelements angibt.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die im Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
Ausnahmen
Die Anzahl der Elemente ist größer als der Maximalwert.
Beispiele
Im folgenden Beispiel werden eine DataContractSerializer-Instanz, die den zu serialisierenden bzw. zu deserialisierenden Typ angibt, das XML-Stammelement und der Namespace (als XmlDictionaryString-Parameter) sowie eine IEnumerable<T>-Instanz erstellt, die die bei der Deserialisierung verwendeten Typen enthält. Der Code legt auch die ignoreExtensionDataObject
Parameter und preserveObjectReferences
auf true
fest und gibt eine Implementierung der Schnittstelle an, um IDataContractSurrogate Legacytypen (Typen, für die das DataContractAttribute Attribut nicht angewendet wurde) zu verarbeiten. Weitere Informationen finden Sie in der Dokumentation zu IDataContractSurrogate.
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
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- IDataContractSurrogate
Gilt für:
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem das XML-Element und den Namespace, 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 zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- rootNamespace
- String
Der Namespace des XML-Elements, das den zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
Ausnahmen
Die Anzahl der Elemente ist größer als der Maximalwert.
Beispiele
Im folgenden Beispiel werden eine DataContractSerializer-Instanz, die den zu serialisierenden bzw. zu deserialisierenden Typ angibt, das XML-Stammelement und der Namespace sowie eine IEnumerable<T>-Instanz, die die bei der Deserialisierung verwendeten bekannten Typen enthält, erstellt. Der Code legt auch die ignoreExtensionDataObject
Parameter und preserveObjectReferences
auf true
fest und gibt eine Implementierung der Schnittstelle an, um IDataContractSurrogate Legacytypen (Typen, für die das DataContractAttribute Attribut nicht angewendet wurde) zu verarbeiten. Weitere Informationen finden Sie in der Dokumentation zu IDataContractSurrogate.
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
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Gilt für:
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird.
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>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll. Der Standardwert ist der Wert, der von der Int32.MaxValue-Eigenschaft zurückgegeben wird.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
Ausnahmen
Die Anzahl der Elemente ist größer als der Maximalwert.
Beispiele
In dem folgenden Beispiel werden eine DataContractSerializer-Instanz, die den zu serialisierenden bzw. zu deserialisierenden Typ angibt, sowie eine IEnumerable<T>-Instanz, die die bei der Serialisierung oder Deserialisierung verwendeten bekannten Typen enthält, erstellt. Der Code legt auch die ignoreExtensionDataObject
Parameter und preserveObjectReferences
auf true
fest und gibt eine Implementierung der Schnittstelle an, um IDataContractSurrogate Legacytypen (Typen, für die das DataContractAttribute Attribut nicht angewendet wurde) zu verarbeiten. Weitere Informationen finden Sie in der Dokumentation zu IDataContractSurrogate.
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
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Gilt für:
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Diese Methode nennt zudem eine Liste bekannter Typen, die ggf. im Objektdiagramm enthalten sind, sowie die maximale Anzahl von zu serialisierenden Diagrammelementen und Parameter zum Ignorieren nicht erwarteter Daten. Weiterhin kennzeichnet sie, ob nicht standardmäßige XML-Konstrukte verwendet werden, um Objektverweisdaten im Diagramm beizubehalten, und ob ein Ersatzzeichen für eine benutzerdefinierte Serialisierung verwendet wird. Sie enthält außerdem eine Alternative zur Zuordnung von xsi:type
-Deklarationen zur Laufzeit.
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>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
- maxItemsInObjectGraph
- Int32
Die maximale Anzahl von Elementen im Diagramm, die serialisiert oder deserialisiert werden soll. Der Standardwert ist der Wert, der von der Int32.MaxValue-Eigenschaft zurückgegeben wird.
- ignoreExtensionDataObject
- Boolean
true
, um die von einer Erweiterung des Typs angegebenen Daten bei der Serialisierung und Deserialisierung zu ignorieren, andernfalls false
.
- preserveObjectReferences
- Boolean
true
, um zum Beibehalten der Objektverweisdaten nicht standardmäßige XML-Konstrukte zu verwenden, andernfalls false
.
- dataContractSurrogate
- IDataContractSurrogate
Eine Implementierung des IDataContractSurrogate, um den Serialisierungsprozess anzupassen.
- dataContractResolver
- DataContractResolver
Eine Implementierung des DataContractResolver, um Datenvertragstypen xsi:type
-Deklarationen zuzuordnen.
Hinweise
Warnung
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
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Darüber hinaus gibt diese Methode das XML-Stammelement und den Namespace in zwei Zeichenfolgenparametern sowie eine Liste bekannter Typen, die in dem Objektdiagramm ggf. enthalten sind, an.
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 Stammelementname des Inhalts.
- rootNamespace
- String
Der Namespace des Stammelements.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen Typen angibt (falls vorhanden).
Beispiele
Im folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ sowie den XML-Namen und -Namespace angibt, der aus dem XML-Dokument gelesen bzw. in das XML-Dokument geschrieben wird. Der Code erstellt zudem eine IEnumerable<T>-Instanz, die die bekannten Typen enthält, die bei 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
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs mithilfe des XML-Stammelements und -Namespaces zu serialisieren bzw. zu deserialisieren, das/der durch die Parameter des Typs XmlDictionaryString angegeben 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-Objekt, das den Namen des Stammelements für den Inhalt enthält.
- rootNamespace
- XmlDictionaryString
Ein XmlDictionaryString-Objekt, das den Namespace des Stammelements enthält.
Beispiele
Im folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ sowie den XML-Namen und -Namespace (als XmlDictionaryString-Objekte) angibt, der aus dem XML-Dokument gelesen bzw. in das XML-Dokument geschrieben wird.
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
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs mithilfe des bereitgestellten XML-Stammelements und -Namespace zu serialisieren bzw. zu deserialisieren.
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 zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
- rootNamespace
- String
Der Namespace des XML-Elements, das den zu serialisierenden bzw. zu deserialisierenden Inhalt enthält.
Beispiele
Im folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ sowie den XML-Namen und -Namespace angibt, der aus dem XML-Dokument gelesen bzw. in das XML-Dokument geschrieben wird.
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
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs und Einstellungen zu serialisieren bzw. zu 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 Einstellungen des Serialisierungsprogramms
Gilt für:
DataContractSerializer(Type, IEnumerable<Type>)
- Quelle:
- DataContractSerializer.cs
- Quelle:
- DataContractSerializer.cs
- Quelle:
- DataContractSerializer.cs
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs sowie eine Auflistung bekannter Typen, die im Objektdiagramm vorhanden sind, zu serialisieren bzw. zu deserialisieren.
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>-Objekt des Typs Type, das die in dem Objektdiagramm enthaltenen Typen angibt (falls vorhanden).
Beispiele
In dem folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ sowie eine Auflistung bekannter Typen, die in dem Objektdiagramm verwendet werden können, angibt.
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
Initialisiert eine neue Instanz der DataContractSerializer-Klasse, um ein Objekt des genannten Typs zu serialisieren bzw. zu deserialisieren. Darüber hinaus gibt diese Methode das XML-Stammelement und den Namespace in zwei XmlDictionaryString-Parametern sowie eine Liste bekannter Typen, die in dem Objektdiagramm ggf. enthalten sind, an.
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-Objekt, das den Namen des Stammelements für den Inhalt enthält.
- rootNamespace
- XmlDictionaryString
Ein XmlDictionaryString-Objekt, das den Namespace des Stammelements enthält.
- knownTypes
- IEnumerable<Type>
Ein IEnumerable<T>-Objekt des Typs Type, das die im Objektdiagramm enthaltenen bekannten Typen angibt (falls vorhanden).
Beispiele
Im folgenden Beispiel wird eine Instanz des DataContractSerializer-Objekts erstellt, das den zu serialisierenden bzw. zu deserialisierenden Typ sowie den XML-Namen und -Namespace (als XmlDictionaryString-Objekte) angibt, der aus dem XML-Dokument gelesen bzw. in das XML-Dokument geschrieben wird. Der Code erstellt zudem eine IEnumerable<T>-Instanz, die die bekannten Typen enthält, die bei 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