DataContractSerializer Konstruktorer
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Initierar en ny instans av DataContractSerializer klassen.
Överlagringar
| Name | Description |
|---|---|
| DataContractSerializer(Type) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering, parametrar XmlDictionaryString för som anger XML-elementet och namnområdet som innehåller innehållet. och ett alternativ för att mappa |
| DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering, XML-elementet och namnområdet som innehåller innehållet. och ett alternativ för att mappa |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om du vill använda xml-konstruktioner som inte är standard för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering och parametrar XmlDictionaryString för som anger XML-elementet och namnområdet som innehåller innehållet. |
| DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering samt XML-elementet och namnområdet som innehåller innehållet. |
| DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen och en surrogat för anpassad serialisering. |
| DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering och ett alternativ för mappningsdeklarationer |
| DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger även rot-XML-elementet och namnområdet i två strängparametrar samt en lista över kända typer som kan finnas i objektdiagrammet. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen med hjälp av XML-rotelementet och namnområdet som anges via parametrarna av typen XmlDictionaryString. |
| DataContractSerializer(Type, String, String) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen med hjälp av det angivna XML-rotelementet och namnområdet. |
| DataContractSerializer(Type, DataContractSerializerSettings) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen och inställningarna. |
| DataContractSerializer(Type, IEnumerable<Type>) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen och en samling kända typer som kan finnas i objektdiagrammet. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger även xml-rotelementet och namnområdet i två XmlDictionaryString parametrar samt en lista över kända typer som kan finnas i objektdiagrammet. |
DataContractSerializer(Type)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen.
public:
DataContractSerializer(Type ^ type);
public DataContractSerializer(Type type);
new System.Runtime.Serialization.DataContractSerializer : Type -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras.
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
Gäller för
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering, parametrar XmlDictionaryString för som anger XML-elementet och namnområdet som innehåller innehållet. och ett alternativ för att mappa xsi:type deklarationer vid körning.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- XmlDictionaryString
XML-elementet som omger innehållet för att serialisera eller deserialisera.
- rootNamespace
- XmlDictionaryString
Namnområdet för XML-elementet som omger innehållet för att serialisera eller deserialisera.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras.
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
- dataContractResolver
- DataContractResolver
En implementering av DataContractResolver att mappa xsi:type deklarationer till datakontraktstyper.
Gäller för
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering, XML-elementet och namnområdet som innehåller innehållet. och ett alternativ för att mappa xsi:type deklarationer vid körning.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- String
XML-elementet som omger innehållet för att serialisera eller deserialisera.
- rootNamespace
- String
Namnområdet för XML-elementet som omger innehållet för att serialisera eller deserialisera.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras.
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
- dataContractResolver
- DataContractResolver
En implementering av DataContractResolver att mappa xsi:type deklarationer till datakontraktstyper.
Gäller för
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om du vill använda xml-konstruktioner som inte är standard för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering och parametrar XmlDictionaryString för som anger XML-elementet och namnområdet som innehåller innehållet.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- XmlDictionaryString
Som XmlDictionaryString anger XML-elementet som omger innehållet för serialisering eller deserialisering.
- rootNamespace
- XmlDictionaryString
Som XmlDictionaryString anger XML-namnområdet för roten.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras.
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
Undantag
Antalet objekt överskrider det maximala värdet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras, rot-XML-elementet och namnområdet (som XmlDictionaryString parametrar) och en instans av en IEnumerable<T> som innehåller de typer som används under deserialiseringen. Koden anger även parametrarna ignoreExtensionDataObject och preserveObjectReferences till true, och anger en implementering av IDataContractSurrogate gränssnittet för att hantera äldre typer (typer som inte har attributet DataContractAttribute tillämpat). Mer information finns i dokumentationen 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
Se även
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- IDataContractSurrogate
Gäller för
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering samt XML-elementet och namnområdet som innehåller innehållet.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- String
XML-elementet som omger innehållet för att serialisera eller deserialisera.
- rootNamespace
- String
Namnområdet för XML-elementet som omger innehållet för att serialisera eller deserialisera.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras.
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
Undantag
Antalet objekt överskrider det maximala värdet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras, rot-XML-elementet och namnområdet samt en instans av en IEnumerable<T> som innehåller de typer som används under deserialiseringen. Koden anger även parametrarna ignoreExtensionDataObject och preserveObjectReferences till true, och anger en implementering av IDataContractSurrogate gränssnittet för att hantera äldre typer (typer som inte har attributet DataContractAttribute tillämpat). Mer information finns i dokumentationen 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
Se även
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Gäller för
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen och en surrogat för anpassad serialisering.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras. Standardvärdet är värdet som returneras av egenskapen Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
Undantag
Antalet objekt överskrider det maximala värdet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras och en instans av en IEnumerable<T> som innehåller de kända typer som används under serialisering eller deserialisering. Koden anger även parametrarna ignoreExtensionDataObject och preserveObjectReferences till true, och anger en implementering av IDataContractSurrogate gränssnittet för att hantera äldre typer (typer som inte har attributet DataContractAttribute tillämpat). Mer information finns i dokumentationen 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
Se även
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Gäller för
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger också en lista över kända typer som kan finnas i objektdiagrammet, det maximala antalet grafobjekt som ska serialiseras, parametrar för att ignorera oväntade data, om xml-konstruktioner som inte är standard ska användas för att bevara objektreferensdata i grafen, surrogat för anpassad serialisering och ett alternativ för mappningsdeklarationer xsi:type vid körning.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
- maxItemsInObjectGraph
- Int32
Det maximala antalet objekt i diagrammet som ska serialiseras eller deserialiseras. Standardvärdet är värdet som returneras av egenskapen Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
trueför att ignorera data som tillhandahålls av ett tillägg av typen vid serialisering och deserialisering; annars . false
- preserveObjectReferences
- Boolean
trueför att använda XML-konstruktioner som inte är standard för att bevara objektreferensdata. annars . false
- dataContractSurrogate
- IDataContractSurrogate
En implementering av IDataContractSurrogate för att anpassa serialiseringsprocessen.
- dataContractResolver
- DataContractResolver
En implementering av DataContractResolver att mappa xsi:type deklarationer till datakontraktstyper.
Kommentarer
Varning
Den här metoden är inte tillgänglig i Windows Store-appar.
Gäller för
DataContractSerializer(Type, String, String, IEnumerable<Type>)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger även rot-XML-elementet och namnområdet i två strängparametrar samt en lista över kända typer som kan finnas i objektdiagrammet.
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))
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- String
Innehållets rotelementnamn.
- rootNamespace
- String
Rotelementets namnområde.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de typer som kan finnas i objektdiagrammet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras samt XML-namnet och namnområdet som ska läsas från eller skrivas till XML-dokumentet. Koden skapar också en instans av en IEnumerable<T> som innehåller de kända typer som används under serialisering eller deserialisering.
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
Se även
Gäller för
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen med hjälp av XML-rotelementet och namnområdet som anges via parametrarna av typen 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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- XmlDictionaryString
En XmlDictionaryString som innehåller rotelementets namn på innehållet.
- rootNamespace
- XmlDictionaryString
En XmlDictionaryString som innehåller rotelementets namnområde.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras samt XML-namnet och namnområdet (som objekt) som XmlDictionaryString ska läsas från eller skrivas till XML-dokumentet.
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
Gäller för
DataContractSerializer(Type, String, String)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen med hjälp av det angivna XML-rotelementet och namnområdet.
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)
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- String
Namnet på XML-elementet som omger innehållet för att serialisera eller deserialisera.
- rootNamespace
- String
Namnområdet för XML-elementet som omger innehållet för att serialisera eller deserialisera.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras samt XML-namnet och namnområdet som ska läsas från eller skrivas till XML-dokumentet.
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
Gäller för
DataContractSerializer(Type, DataContractSerializerSettings)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen och inställningarna.
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)
Parametrar
- type
- Type
Typ av instans som ska serialiseras eller deserialiseras.
- settings
- DataContractSerializerSettings
Serialiserarinställningarna.
Gäller för
DataContractSerializer(Type, IEnumerable<Type>)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen och en samling kända typer som kan finnas i objektdiagrammet.
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))
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de typer som kan finnas i objektdiagrammet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras och en samling kända typer som kan användas i objektdiagrammet.
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
Se även
Gäller för
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)
Initierar en ny instans av DataContractSerializer klassen för att serialisera eller deserialisera ett objekt av den angivna typen. Den här metoden anger även xml-rotelementet och namnområdet i två XmlDictionaryString parametrar samt en lista över kända typer som kan finnas i objektdiagrammet.
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))
Parametrar
- type
- Type
Typen av instanser som serialiseras eller deserialiseras.
- rootName
- XmlDictionaryString
En XmlDictionaryString som innehåller rotelementets namn på innehållet.
- rootNamespace
- XmlDictionaryString
En XmlDictionaryString som innehåller rotelementets namnområde.
- knownTypes
- IEnumerable<Type>
En IEnumerable<T> av Type dessa innehåller de kända typer som kan finnas i objektdiagrammet.
Exempel
I följande exempel skapas en instans av DataContractSerializer som anger vilken typ som ska serialiseras eller deserialiseras samt XML-namnet och namnområdet (som objekt) som XmlDictionaryString ska läsas från eller skrivas till XML-dokumentet. Koden skapar också en instans av en IEnumerable<T> som innehåller de kända typer som används under serialisering eller deserialisering.
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