DataContractSerializer Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Inizializza una nuova istanza della classe DataContractSerializer.
Overload
| Nome | Descrizione |
|---|---|
| DataContractSerializer(Type) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata, parametri di XmlDictionaryString che specificano l'elemento XML e lo spazio dei nomi che contiene il contenuto, e un'alternativa per le dichiarazioni di mapping |
| DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata, l'elemento XML e lo spazio dei nomi che contiene il contenuto, e un'alternativa per le dichiarazioni di mapping |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafico da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata e parametri di XmlDictionaryString che specificano l'elemento XML e lo spazio dei nomi che contengono il contenuto. |
| DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata e l'elemento XML e lo spazio dei nomi che contengono il contenuto. |
| DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico e un surrogato per la serializzazione personalizzata. |
| DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento degli oggetti nel grafico, un surrogato per la serializzazione personalizzata e un'alternativa per le dichiarazioni di mapping |
| DataContractSerializer(Type, String, String, IEnumerable<Type>) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche l'elemento XML radice e lo spazio dei nomi in due parametri stringa, nonché un elenco di tipi noti che possono essere presenti nell'oggetto grafico. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice XML e lo spazio dei nomi specificati tramite i parametri di tipo XmlDictionaryString. |
| DataContractSerializer(Type, String, String) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice e lo spazio dei nomi XML forniti. |
| DataContractSerializer(Type, DataContractSerializerSettings) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo e delle impostazioni specificati. |
| DataContractSerializer(Type, IEnumerable<Type>) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato e una raccolta di tipi noti che possono essere presenti nell'oggetto grafico. |
| DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>) |
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche l'elemento XML radice e lo spazio dei nomi in due XmlDictionaryString parametri, nonché un elenco di tipi noti che possono essere presenti nell'oggetto grafico. |
DataContractSerializer(Type)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato.
public:
DataContractSerializer(Type ^ type);
public DataContractSerializer(Type type);
new System.Runtime.Serialization.DataContractSerializer : Type -> System.Runtime.Serialization.DataContractSerializer
Public Sub New (type As Type)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare.
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
Si applica a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata, parametri di XmlDictionaryString che specificano l'elemento XML e lo spazio dei nomi che contiene il contenuto, e un'alternativa per le dichiarazioni di mapping xsi:type in fase di esecuzione.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- XmlDictionaryString
Elemento XML che racchiude il contenuto da serializzare o deserializzare.
- rootNamespace
- XmlDictionaryString
Spazio dei nomi dell'elemento XML che racchiude il contenuto da serializzare o deserializzare.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare.
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
- dataContractResolver
- DataContractResolver
Implementazione di per eseguire il DataContractResolver mapping xsi:type delle dichiarazioni ai tipi di contratto dati.
Si applica a
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata, l'elemento XML e lo spazio dei nomi che contiene il contenuto, e un'alternativa per le dichiarazioni di mapping xsi:type in fase di esecuzione.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- String
Elemento XML che racchiude il contenuto da serializzare o deserializzare.
- rootNamespace
- String
Spazio dei nomi dell'elemento XML che racchiude il contenuto da serializzare o deserializzare.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare.
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
- dataContractResolver
- DataContractResolver
Implementazione di per eseguire il DataContractResolver mapping xsi:type delle dichiarazioni ai tipi di contratto dati.
Si applica a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafico da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata e parametri di XmlDictionaryString che specificano l'elemento XML e lo spazio dei nomi che contengono il contenuto.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- XmlDictionaryString
Oggetto XmlDictionaryString che specifica l'elemento XML che racchiude il contenuto da serializzare o deserializzare.
- rootNamespace
- XmlDictionaryString
Oggetto XmlDictionaryString che specifica lo spazio dei nomi XML della radice.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare.
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
Eccezioni
Il numero di elementi supera il valore massimo.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, l'elemento XML radice e lo spazio dei nomi (come XmlDictionaryString parametri) e un'istanza di che IEnumerable<T> contiene i tipi utilizzati durante la deserializzazione. Il codice imposta anche i ignoreExtensionDataObject parametri e preserveObjectReferences su truee specifica un'implementazione dell'interfaccia IDataContractSurrogate per gestire i tipi legacy (tipi che non hanno l'attributo DataContractAttribute applicato). Per altre informazioni, vedere la IDataContractSurrogate documentazione.
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
Vedi anche
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- IDataContractSurrogate
Si applica a
DataContractSerializer(Type, String, String, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico, un surrogato per la serializzazione personalizzata e l'elemento XML e lo spazio dei nomi che contengono il contenuto.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- String
Elemento XML che racchiude il contenuto da serializzare o deserializzare.
- rootNamespace
- String
Spazio dei nomi dell'elemento XML che racchiude il contenuto da serializzare o deserializzare.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare.
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
Eccezioni
Il numero di elementi supera il valore massimo.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, l'elemento XML radice e lo spazio dei nomi e un'istanza di che IEnumerable<T> contiene i tipi utilizzati durante la deserializzazione. Il codice imposta anche i ignoreExtensionDataObject parametri e preserveObjectReferences su truee specifica un'implementazione dell'interfaccia IDataContractSurrogate per gestire i tipi legacy (tipi che non hanno l'attributo DataContractAttribute applicato). Per altre informazioni, vedere la IDataContractSurrogate documentazione.
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
Vedi anche
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Si applica a
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento agli oggetti nel grafico e un surrogato per la serializzazione personalizzata.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare. Il valore predefinito è il valore restituito dalla proprietà Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
Eccezioni
Il numero di elementi supera il valore massimo.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare e un'istanza di per IEnumerable<T> contenere i tipi noti utilizzati durante la serializzazione o la deserializzazione. Il codice imposta anche i ignoreExtensionDataObject parametri e preserveObjectReferences su truee specifica un'implementazione dell'interfaccia IDataContractSurrogate per gestire i tipi legacy (tipi che non hanno l'attributo DataContractAttribute applicato). Per altre informazioni, vedere la IDataContractSurrogate documentazione.
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
Vedi anche
- MaxItemsInObjectGraph
- PreserveObjectReferences
- IgnoreExtensionDataObject
- IExtensibleDataObject
- ExtensionDataObject
- KnownTypeAttribute
- IDataContractSurrogate
Si applica a
DataContractSerializer(Type, IEnumerable<Type>, Int32, Boolean, Boolean, IDataContractSurrogate, DataContractResolver)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi del grafo da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per mantenere i dati di riferimento degli oggetti nel grafico, un surrogato per la serializzazione personalizzata e un'alternativa per le dichiarazioni di mapping xsi:type in fase di esecuzione.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
- maxItemsInObjectGraph
- Int32
Numero massimo di elementi nel grafico da serializzare o deserializzare. Il valore predefinito è il valore restituito dalla proprietà Int32.MaxValue .
- ignoreExtensionDataObject
- Boolean
true per ignorare i dati forniti da un'estensione del tipo al momento della serializzazione e della deserializzazione; in caso contrario, false.
- preserveObjectReferences
- Boolean
true per utilizzare costrutti XML non standard per conservare i dati di riferimento agli oggetti; in caso contrario, false.
- dataContractSurrogate
- IDataContractSurrogate
Implementazione di IDataContractSurrogate per personalizzare il processo di serializzazione.
- dataContractResolver
- DataContractResolver
Implementazione di per eseguire il DataContractResolver mapping xsi:type delle dichiarazioni ai tipi di contratto dati.
Commenti
Avvertimento
Questo metodo non è disponibile nelle app dello Store Windows.
Si applica a
DataContractSerializer(Type, String, String, IEnumerable<Type>)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche l'elemento XML radice e lo spazio dei nomi in due parametri stringa, nonché un elenco di tipi noti che possono essere presenti nell'oggetto grafico.
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);
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))
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- String
Nome dell'elemento radice del contenuto.
- rootNamespace
- String
Spazio dei nomi dell'elemento radice.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi che possono essere presenti nell'oggetto grafico.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, nonché il nome XML e lo spazio dei nomi da leggere o scrivere nel documento XML. Il codice crea anche un'istanza di per IEnumerable<T> contenere i tipi noti usati durante la serializzazione o la deserializzazione.
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
Vedi anche
Si applica a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice XML e lo spazio dei nomi specificati tramite i parametri di tipo 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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- XmlDictionaryString
Oggetto XmlDictionaryString contenente il nome dell'elemento radice del contenuto.
- rootNamespace
- XmlDictionaryString
Oggetto XmlDictionaryString contenente lo spazio dei nomi dell'elemento radice.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, nonché il nome XML e lo spazio dei nomi (come XmlDictionaryString oggetti) da leggere o scrivere nel documento 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
Si applica a
DataContractSerializer(Type, String, String)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice e lo spazio dei nomi XML forniti.
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)
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- String
Nome dell'elemento XML che racchiude il contenuto da serializzare o deserializzare.
- rootNamespace
- String
Spazio dei nomi dell'elemento XML che racchiude il contenuto da serializzare o deserializzare.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, nonché il nome XML e lo spazio dei nomi da leggere o scrivere nel documento 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
Si applica a
DataContractSerializer(Type, DataContractSerializerSettings)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo e delle impostazioni specificati.
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)
Parametri
- type
- Type
Tipo dell'istanza da serializzare o deserializzare.
- settings
- DataContractSerializerSettings
Impostazioni del serializzatore.
Si applica a
DataContractSerializer(Type, IEnumerable<Type>)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato e una raccolta di tipi noti che possono essere presenti nell'oggetto grafico.
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))
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi che possono essere presenti nell'oggetto grafico.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare e una raccolta di tipi noti che possono essere utilizzati nell'oggetto grafico.
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
Vedi anche
Si applica a
DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString, IEnumerable<Type>)
Inizializza una nuova istanza della DataContractSerializer classe per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica anche l'elemento XML radice e lo spazio dei nomi in due XmlDictionaryString parametri, nonché un elenco di tipi noti che possono essere presenti nell'oggetto grafico.
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))
Parametri
- type
- Type
Tipo delle istanze serializzate o deserializzate.
- rootName
- XmlDictionaryString
Oggetto XmlDictionaryString contenente il nome dell'elemento radice del contenuto.
- rootNamespace
- XmlDictionaryString
Oggetto XmlDictionaryString contenente lo spazio dei nomi dell'elemento radice.
- knownTypes
- IEnumerable<Type>
Oggetto IEnumerable<T> di Type che contiene i tipi noti che possono essere presenti nell'oggetto grafico.
Esempio
Nell'esempio seguente viene creata un'istanza DataContractSerializer di che specifica il tipo da serializzare o deserializzare, nonché il nome XML e lo spazio dei nomi (come XmlDictionaryString oggetti) da leggere o scrivere nel documento XML. Il codice crea anche un'istanza di per IEnumerable<T> contenere i tipi noti usati durante la serializzazione o la deserializzazione.
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