Condividi tramite


DataContractSerializer Classe

Definizione

Serializza e deserializza un'istanza di un tipo in un flusso o documento XML usando un contratto dati fornito. La classe non può essere ereditata.

public ref class DataContractSerializer sealed : System::Runtime::Serialization::XmlObjectSerializer
public sealed class DataContractSerializer : System.Runtime.Serialization.XmlObjectSerializer
type DataContractSerializer = class
    inherit XmlObjectSerializer
Public NotInheritable Class DataContractSerializer
Inherits XmlObjectSerializer
Ereditarietà
DataContractSerializer

Commenti

Per altre informazioni su questa API, vedere Osservazioni api supplementari per DataContractSerializer.

Costruttori

DataContractSerializer(Type)

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato.

DataContractSerializer(Type, DataContractSerializerSettings)

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo e delle impostazioni specificati.

DataContractSerializer(Type, IEnumerable<Type>)

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato e una raccolta di tipi conosciuti che possono essere presenti nell'oggetto grafico.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto nell'oggetto grafico e un surrogato per la serializzazione personalizzata.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati non previsti, se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto nel grafico, un surrogato per la serializzazione personalizzata e un'alternativa per il mapping di dichiarazioni xsi:type in fase di esecuzione.

DataContractSerializer(Type, String, String)

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice e lo spazio dei nomi XML forniti.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre l'elemento XML radice e lo spazio dei nomi in due parametri di stringa nonché un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per conservare i dati di riferimento all'oggetto nel grafico, un surrogato per la serializzazione personalizzata e l'elemento e lo spazio dei nomi XML che contengono il contenuto.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati non previsti, se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto nel grafico, un surrogato per la serializzazione personalizzata, l'elemento e lo spazio dei nomi XML che includono il contenuto e un'alternativa per il mapping di dichiarazioni xsi:type in fase di esecuzione.

DataContractSerializer(Type, XmlDictionaryString, XmlDictionaryString)

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato utilizzando l'elemento radice e lo spazio dei nomi XML specificati dai parametri di tipo XmlDictionaryString.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre l'elemento XML radice e lo spazio dei nomi in due parametri XmlDictionaryString nonché un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati imprevisti, se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto nell'oggetto grafico, un surrogato per la serializzazione personalizzata e parametri di XmlDictionaryString che specificano l'elemento e lo spazio dei nomi XML che contengono il contenuto.

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

Inizializza una nuova istanza della classe DataContractSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi conosciuti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare, parametri per ignorare i dati non previsti, se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto nel grafico, un surrogato per la serializzazione personalizzata, l'elemento e i parametri XmlDictionaryString che specificano l'elemento XML e gli spazi dei nomi che includono il contenuto e un'alternativa per il mapping di dichiarazioni xsi:type in fase di esecuzione.

Proprietà

DataContractResolver

Ottiene il componente utilizzato per eseguire il mapping in modo dinamico di dichiarazioni xsi:type a tipi di contratto conosciuti.

DataContractSurrogate

Ottiene un tipo surrogato in grado di estendere il processo di serializzazione o deserializzazione.

IgnoreExtensionDataObject

Ottiene un valore che specifica se ignorare i dati forniti da un'estensione della classe durante la serializzazione o la deserializzazione della classe stessa.

KnownTypes

Ottiene una raccolta di tipi che possono essere presenti nell'oggetto grafico serializzato utilizzando l'istanza di DataContractSerializer.

MaxItemsInObjectGraph

Ottiene il numero massimo di elementi di un oggetto grafico da serializzare o deserializzare.

PreserveObjectReferences

Ottiene un valore che specifica se utilizzare costrutti XML non standard per conservare i dati del riferimento all'oggetto.

SerializeReadOnlyTypes

Ottiene un valore che indica se i tipi di sola lettura vengono serializzati.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IsStartObject(XmlDictionaryReader)

Determina se la classe XmlDictionaryReader è posizionata su un oggetto che può essere deserializzato.

IsStartObject(XmlReader)

Determina se la classe XmlReader è posizionata su un oggetto che può essere deserializzato.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ReadObject(Stream)

Legge il flusso o documento XML con una classe Stream e restituisce l'oggetto deserializzato.

(Ereditato da XmlObjectSerializer)
ReadObject(XmlDictionaryReader)

Legge il flusso o documento XML con una classe XmlDictionaryReader e restituisce l'oggetto deserializzato.

(Ereditato da XmlObjectSerializer)
ReadObject(XmlDictionaryReader, Boolean)

Legge il flusso XML con una classe XmlDictionaryReader e restituisce l'oggetto deserializzato, specifica inoltre se viene eseguito un controllo per verificare il nome dell'oggetto prima di leggerne il valore.

ReadObject(XmlDictionaryReader, Boolean, DataContractResolver)

Legge un documento o un flusso di documenti XML e restituisce l'oggetto deserializzato. Il metodo include un parametro che consente di specificare se il nome dell'oggetto deve essere verificato e convalidato e un resolver per il mapping di dichiarazioni xsi:type in fase di esecuzione.

ReadObject(XmlReader)

Legge il flusso XML con una classe XmlReader e restituisce l'oggetto deserializzato.

ReadObject(XmlReader, Boolean)

Legge il flusso XML con una classe XmlReader e restituisce l'oggetto deserializzato, specifica inoltre se viene eseguito un controllo per verificare il nome dell'oggetto prima di leggerne il valore.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
WriteEndObject(XmlDictionaryWriter)

Scrive l'elemento XML di chiusura utilizzando una classe XmlDictionaryWriter.

WriteEndObject(XmlWriter)

Scrive l'elemento XML di chiusura utilizzando una classe XmlWriter.

WriteObject(Stream, Object)

Scrive il contenuto completo (inizio, contenuto e fine) dell'oggetto nel documento XML o nel flusso con l'oggetto specificato Stream.

(Ereditato da XmlObjectSerializer)
WriteObject(XmlDictionaryWriter, Object)

Scrive il contenuto completo (inizio, contenuto e fine) dell'oggetto nel documento XML o nel flusso con l'oggetto specificato XmlDictionaryWriter.

(Ereditato da XmlObjectSerializer)
WriteObject(XmlDictionaryWriter, Object, DataContractResolver)

Scrive tutti i dati dell'oggetto (elemento XML, contenuto e elemento racchiuso) in un documento XML o in un flusso usando xmlDictionaryWriter specificato. Il metodo include un resolver per il mapping di dichiarazioni xsi:type in fase di esecuzione.

WriteObject(XmlWriter, Object)

Scrive tutti i dati dell'oggetto (elemento XML di apertura, contenuto ed elemento di chiusura) in un documento o flusso XML con una classe XmlWriter.

WriteObjectContent(XmlDictionaryWriter, Object)

Scrive il contenuto XML utilizzando un oggetto XmlDictionaryWriter.

WriteObjectContent(XmlWriter, Object)

Scrive il contenuto XML utilizzando un oggetto XmlWriter.

WriteStartObject(XmlDictionaryWriter, Object)

Scrive l'elemento XML di apertura utilizzando un oggetto XmlDictionaryWriter.

WriteStartObject(XmlWriter, Object)

Scrive l'elemento XML di apertura utilizzando un oggetto XmlWriter.

Metodi di estensione

GetSerializationSurrogateProvider(DataContractSerializer)

Restituisce il provider di serializzazione surrogato per questo serializzatore.

SetSerializationSurrogateProvider(DataContractSerializer, ISerializationSurrogateProvider)

Specifica un provider di serializzazione surrogato per questo DataContractSerializer.

Si applica a

Thread safety

Le istanze di questa classe sono thread safe, tranne quando l'istanza viene usata con un'implementazione di IDataContractSurrogate o DataContractResolver.

Vedi anche