DataContractSerializer Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Inicializuje novou instanci DataContractSerializer třídy.
Přetížení
DataContractSerializer(Type) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které se můžou vyskytovat v grafu objektů, maximální počet položek grafu, které se mají serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektů v grafu, náhradní pro vlastní serializaci, parametry XmlDictionaryString , které určují element XML a obor názvů, který obsahuje obsah, a alternativu pro mapování |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které se můžou vyskytovat v objektovém grafu, maximální počet položek grafu, které se mají serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat na objekty v grafu, náhradní pro vlastní serializaci, element XML a obor názvů, který obsahuje obsah. a alternativu pro mapování |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu k serializaci, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a parametry XmlDictionaryString , které určují xml element a obor názvů, které obsahují obsah. |
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a xml element a obor názvů, které obsahují obsah. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, a náhradu pro vlastní serializaci. |
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a alternativu pro mapování |
DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje kořenový element XML a obor názvů ve dvou řetězcových parametrech, stejně jako seznam známých typů, které mohou být přítomny v grafu objektů. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu pomocí kořenového elementu XML a oboru názvů zadaného prostřednictvím parametrů typu XmlDictionaryString. |
DataContractSerializer(Type, String, String) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu pomocí zadaného kořenového elementu XML a oboru názvů. |
DataContractSerializer(Type, DataContractSerializerSettings) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu a nastavení. |
DataContractSerializer(Type, IEnumerable<Type>) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu a kolekci známých typů, které mohou být přítomny v grafu objektů. |
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje kořenový element XML a obor názvů ve dvou XmlDictionaryString parametrech, stejně jako seznam známých typů, které mohou být přítomny v grafu objektů. |
DataContractSerializer(Type)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu.
public:
DataContractSerializer(Type ^ type);
public DataContractSerializer (Type type);
new System.Runtime.Serialization.DataContractSerializer : Type -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
Příklady
Následující příklad vytvoří instanci DataContractSerializer , která určuje typ serializovat nebo deserializovat.
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
Platí pro
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které se můžou vyskytovat v grafu objektů, maximální počet položek grafu, které se mají serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektů v grafu, náhradní pro vlastní serializaci, parametry XmlDictionaryString , které určují element XML a obor názvů, který obsahuje obsah, a alternativu pro mapování xsi:type
deklarací za běhu.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- XmlDictionaryString
Element XML, který obklopuje obsah serializovat nebo deserializovat.
- rootNamespace
- XmlDictionaryString
Obor názvů elementu XML, který uzavře obsah k serializaci nebo deserializaci.
- knownTypes
- IEnumerable<Type>
Obsahuje IEnumerable<T>Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
- dataContractResolver
- DataContractResolver
Implementace DataContractResolverxsi:type
mapování deklarací na typy kontraktů dat.
Platí pro
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které se můžou vyskytovat v objektovém grafu, maximální počet položek grafu, které se mají serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat na objekty v grafu, náhradní pro vlastní serializaci, element XML a obor názvů, který obsahuje obsah. a alternativu pro mapování xsi:type
deklarací za běhu.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- String
Element XML, který obklopuje obsah serializovat nebo deserializovat.
- rootNamespace
- String
Obor názvů elementu XML, který uzavře obsah k serializaci nebo deserializaci.
- knownTypes
- IEnumerable<Type>
Obsahuje IEnumerable<T>Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
- dataContractResolver
- DataContractResolver
Implementace DataContractResolverxsi:type
mapování deklarací na typy kontraktů dat.
Platí pro
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu k serializaci, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a parametry XmlDictionaryString , které určují xml element a obor názvů, které obsahují obsah.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- XmlDictionaryString
Určuje XmlDictionaryString element XML, který uzavře obsah pro serializaci nebo deserializaci.
- rootNamespace
- XmlDictionaryString
Určuje XmlDictionaryString obor názvů XML kořenového adresáře.
- knownTypes
- IEnumerable<Type>
A IEnumerable<T> obsahující Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
Výjimky
Počet položek překračuje maximální hodnotu.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci, kořenový element XML a obor názvů (jako XmlDictionaryString parametry) a instanci objektu IEnumerable<T> , který obsahuje typy použité při deserializaci. Kód také nastaví ignoreExtensionDataObject
parametry a preserveObjectReferences
na true
a určuje implementaci rozhraní pro zpracování starších IDataContractSurrogate typů (typů, které nemají DataContractAttribute použitý atribut). Další informace najdete v IDataContractSurrogate dokumentaci.
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
Viz také
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- IDataContractSurrogate
Platí pro
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a xml element a obor názvů, které obsahují obsah.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- String
Element XML, který obklopuje obsah serializovat nebo deserializovat.
- rootNamespace
- String
Obor názvů elementu XML, který uzavře obsah k serializaci nebo deserializaci.
- knownTypes
- IEnumerable<Type>
Obsahuje IEnumerable<T>Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
Výjimky
Počet položek překračuje maximální hodnotu.
Příklady
Následující příklad vytvoří instanci DataContractSerializer , která určuje typ serializovat nebo deserializovat, kořenový xml element a obor názvů a instanci IEnumerable<T> , která obsahuje typy použité při deserializaci. Kód také nastaví ignoreExtensionDataObject
parametry a preserveObjectReferences
na true
a určuje implementaci rozhraní pro zpracování starších IDataContractSurrogate typů (typů, které nemají DataContractAttribute použitý atribut). Další informace najdete v IDataContractSurrogate dokumentaci.
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
Viz také
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Platí pro
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, a náhradu pro vlastní serializaci.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- knownTypes
- IEnumerable<Type>
Obsahuje IEnumerable<T>Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat. Výchozí hodnota je vrácena Int32.MaxValue vlastnost.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
Výjimky
Počet položek překračuje maximální hodnotu.
Příklady
Následující příklad vytvoří instanci DataContractSerializer , která určuje typ serializovat nebo deserializovat a instance IEnumerable<T> obsahující známé typy použité při serializaci nebo deserializaci. Kód také nastaví ignoreExtensionDataObject
parametry a preserveObjectReferences
na true
a určuje implementaci rozhraní pro zpracování starších IDataContractSurrogate typů (typů, které nemají DataContractAttribute použitý atribut). Další informace najdete v IDataContractSurrogate dokumentaci.
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
Viz také
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Platí pro
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje seznam známých typů, které mohou být přítomny v objektovém grafu, maximální počet položek grafu serializovat, parametry pro ignorování neočekávaných dat, zda se mají použít nestandardní konstrukce XML k zachování referenčních dat objektu v grafu, náhradní pro vlastní serializaci a alternativu pro mapování xsi:type
deklarací za běhu.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- knownTypes
- IEnumerable<Type>
Obsahuje IEnumerable<T>Type známé typy, které se můžou vyskytovat v grafu objektů.
- maxItemsInObjectGraph
- Int32
Maximální počet položek v grafu, které se mají serializovat nebo deserializovat. Výchozí hodnota je vrácena Int32.MaxValue vlastnost.
- ignoreExtensionDataObject
- Boolean
true
ignorovat data poskytovaná rozšířením typu při serializaci a deserializaci; v opačném případě . false
- preserveObjectReferences
- Boolean
true
k použití nestandardních konstruktorů XML pro zachování referenčních dat objektu; v opačném případě . false
- dataContractSurrogate
- IDataContractSurrogate
Implementace IDataContractSurrogate pro přizpůsobení procesu serializace.
- dataContractResolver
- DataContractResolver
Implementace DataContractResolverxsi:type
mapování deklarací na typy kontraktů dat.
Poznámky
Upozornění
Tato metoda není dostupná v aplikacích pro Windows Store.
Platí pro
DataContractSerializer(Type, String, String, IEnumerable<Type>)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje kořenový element XML a obor názvů ve dvou řetězcových parametrech, stejně jako seznam známých typů, které mohou být přítomny v grafu objektů.
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))
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- String
Název kořenového elementu obsahu.
- rootNamespace
- String
Obor názvů kořenového elementu.
- knownTypes
- IEnumerable<Type>
Type Hodnota IEnumerable<T> obsahující typy, které se můžou vyskytovat v grafu objektů.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci, stejně jako název XML a obor názvů pro čtení nebo zápis do dokumentu XML. Kód také vytvoří instanci objektu, který IEnumerable<T> obsahuje známé typy používané při serializaci nebo deserializaci.
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
Viz také
Platí pro
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu pomocí kořenového elementu XML a oboru názvů zadaného prostřednictvím parametrů typu XmlDictionaryString.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- XmlDictionaryString
Objekt XmlDictionaryString , který obsahuje název kořenového prvku obsahu.
- rootNamespace
- XmlDictionaryString
Objekt XmlDictionaryString , který obsahuje obor názvů kořenového elementu.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci, stejně jako název XML a obor názvů (jako XmlDictionaryString objekty) pro čtení nebo zápis do dokumentu XML.
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
Platí pro
DataContractSerializer(Type, String, String)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu pomocí zadaného kořenového elementu XML a oboru názvů.
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)
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- String
Název elementu XML, který uzavře obsah k serializaci nebo deserializaci.
- rootNamespace
- String
Obor názvů elementu XML, který uzavře obsah k serializaci nebo deserializaci.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci, stejně jako název XML a obor názvů pro čtení nebo zápis do dokumentu XML.
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
Platí pro
DataContractSerializer(Type, DataContractSerializerSettings)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu a nastavení.
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)
Parametry
- type
- Type
Typ instance, která se má serializovat nebo deserializovat.
- settings
- DataContractSerializerSettings
Nastavení serializátoru.
Platí pro
DataContractSerializer(Type, IEnumerable<Type>)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu a kolekci známých typů, které mohou být přítomny v grafu objektů.
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))
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- knownTypes
- IEnumerable<Type>
Type Hodnota IEnumerable<T> obsahující typy, které se můžou vyskytovat v grafu objektů.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci a kolekci známých typů, které lze použít v grafu objektů.
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
Viz také
Platí pro
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)
Inicializuje novou instanci DataContractSerializer třídy serializovat nebo deserializovat objekt zadaného typu. Tato metoda také určuje kořenový element XML a obor názvů ve dvou XmlDictionaryString parametrech, stejně jako seznam známých typů, které mohou být přítomny v grafu objektů.
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))
Parametry
- type
- Type
Typ instancí, které jsou serializovány nebo deserializovány.
- rootName
- XmlDictionaryString
Objekt XmlDictionaryString , který obsahuje název kořenového prvku obsahu.
- rootNamespace
- XmlDictionaryString
Objekt XmlDictionaryString , který obsahuje obor názvů kořenového elementu.
- knownTypes
- IEnumerable<Type>
A IEnumerable<T> obsahující Type známé typy, které se můžou vyskytovat v grafu objektů.
Příklady
Následující příklad vytvoří instanci objektu DataContractSerializer , který určuje typ pro serializaci nebo deserializaci, stejně jako název XML a obor názvů (jako XmlDictionaryString objekty) pro čtení nebo zápis do dokumentu XML. Kód také vytvoří instanci objektu, který IEnumerable<T> obsahuje známé typy používané při serializaci nebo deserializaci.
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