Classe DataContractJsonSerializer (System.Runtime.Serialization.Json)

Cambia visualizzazione:
ScriptFree
Riferimento a .NET Framework
Classe DataContractJsonSerializer
Il presente articolo è stato tradotto manualmente. Per visualizzare questa pagina e contemporaneamente visualizzarne il contenuto in lingua inglese, passare alla visualizzazione semplificata.

Serializza gli oggetti in JSON (JavaScript Object Notation) e deserializza i dati JSON in oggetti.Questa classe non può essere ereditata.

Gerarchia di ereditarietà

System.Object
  System.Runtime.Serialization.XmlObjectSerializer
    System.Runtime.Serialization.Json.DataContractJsonSerializer

Spazio dei nomi:  System.Runtime.Serialization.Json
Assembly:  System.Runtime.Serialization (in System.Runtime.Serialization.dll)
Sintassi

Visual Basic
Public NotInheritable Class DataContractJsonSerializer _
	Inherits XmlObjectSerializer
C#
public sealed class DataContractJsonSerializer : XmlObjectSerializer
Visual C++
public ref class DataContractJsonSerializer sealed : public XmlObjectSerializer
F#
[<Sealed>]
type DataContractJsonSerializer =  
    class
        inherit XmlObjectSerializer
    end

Il tipo DataContractJsonSerializer espone i seguenti membri.

Costruttori

  Nome Descrizione
Metodo pubblico DataContractJsonSerializer(Type) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto del tipo specificato.
Metodo pubblico DataContractJsonSerializer(Type, IEnumerable<Type>) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto del tipo specificato, con una raccolta di tipi noti che possono essere presenti nell'oggetto grafico.
Metodo pubblico DataContractJsonSerializer(Type, String) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto di un tipo specificato utilizzando l'elemento radice XML specificato da un parametro.
Metodo pubblico DataContractJsonSerializer(Type, XmlDictionaryString) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto di un tipo specificato utilizzando l'elemento radice XML specificato da un parametro di tipo XmlDictionaryString.
Metodo pubblico DataContractJsonSerializer(Type, String, IEnumerable<Type>) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto di un tipo specificato utilizzando l'elemento radice XML specificato da un parametro, con una raccolta di tipi noti che possono essere presenti nell'oggetto grafico.
Metodo pubblico DataContractJsonSerializer(Type, XmlDictionaryString, IEnumerable<Type>) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto di un tipo specificato utilizzando l'elemento radice XML specificato da un parametro di tipo XmlDictionaryString, con una raccolta di tipi noti che possono essere presenti nell'oggetto grafico.
Metodo pubblico DataContractJsonSerializer(Type, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare o deserializzare, se ignorare i dati imprevisti o generare informazioni sul tipo e un surrogato per la serializzazione personalizzata.
Metodo pubblico DataContractJsonSerializer(Type, String, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre il nome radice dell'elemento XML, un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare o deserializzare, se ignorare i dati imprevisti o generare informazioni sul tipo e un surrogato per la serializzazione personalizzata.
Metodo pubblico DataContractJsonSerializer(Type, XmlDictionaryString, IEnumerable<Type>, Int32, Boolean, IDataContractSurrogate, Boolean) Inizializza una nuova istanza della classe DataContractJsonSerializer per serializzare o deserializzare un oggetto del tipo specificato. Questo metodo specifica inoltre il nome radice dell'elemento XML, un elenco di tipi noti che possono essere presenti nell'oggetto grafico, il numero massimo di elementi dell'oggetto grafico da serializzare o deserializzare, se ignorare i dati imprevisti o generare informazioni sul tipo e un surrogato per la serializzazione personalizzata.
In alto
Proprietà

  Nome Descrizione
Proprietà pubblica DataContractSurrogate Ottiene un tipo surrogato attualmente attivo per una determinata istanza di IDataContractSurrogate. I surrogati possono estendere il processo di serializzazione o deserializzazione.
Proprietà pubblica IgnoreExtensionDataObject Ottiene un valore che specifica se i dati sconosciuti vengono ignorati durante la deserializzazione e se l'interfaccia IExtensibleDataObject viene ignorata durante la serializzazione.
Proprietà pubblica KnownTypes Ottiene una raccolta di tipi che possono essere presenti nell'oggetto grafico serializzato utilizzando l'istanza di DataContractJsonSerializer.
Proprietà pubblica MaxItemsInObjectGraph Ottiene il numero massimo di elementi in un oggetto grafico che il serializzatore serializza o deserializza in una chiamata di lettura o scrittura.
In alto
Metodi

  Nome Descrizione
Metodo pubblico Equals(Object) Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object)
Metodo protetto Finalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblico GetHashCode Funge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblico GetType Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblico IsStartObject(XmlDictionaryReader) Ottiene un valore che specifica se la classe XmlDictionaryReader è posizionata su un elemento XML che rappresenta un oggetto da cui il serializzatore può eseguire la deserializzazione. (Esegue l'override di XmlObjectSerializer.IsStartObject(XmlDictionaryReader)).
Metodo pubblico IsStartObject(XmlReader) Determina se la classe XmlReader è posizionata su un oggetto che può essere deserializzato. (Esegue l'override di XmlObjectSerializer.IsStartObject(XmlReader)).
Metodo protetto MemberwiseClone Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo pubblico ReadObject(Stream) Legge un flusso di documenti in formato JSON (JavaScript Object Notation) e restituisce l'oggetto deserializzato. (Esegue l'override di XmlObjectSerializer.ReadObject(Stream)).
Metodo pubblico ReadObject(XmlDictionaryReader) Legge il documento XML mappato da JSON (JavaScript Object Notation) con una classe XmlDictionaryReader e restituisce l'oggetto deserializzato. (Esegue l'override di XmlObjectSerializer.ReadObject(XmlDictionaryReader)).
Metodo pubblico ReadObject(XmlReader) Legge il documento XML mappato da JSON (JavaScript Object Notation) con una classe XmlReader e restituisce l'oggetto deserializzato. (Esegue l'override di XmlObjectSerializer.ReadObject(XmlReader)).
Metodo pubblico ReadObject(XmlDictionaryReader, Boolean) Legge il documento XML mappato da JSON con una classe XmlDictionaryReader e restituisce l'oggetto deserializzato. Consente inoltre di specificare se il serializzatore deve verificare il corretto posizionamento su un elemento appropriato prima di eseguire il tentativo di serializzazione. (Esegue l'override di XmlObjectSerializer.ReadObject(XmlDictionaryReader, Boolean)).
Metodo pubblico ReadObject(XmlReader, Boolean) Legge un documento XML mappato da JSON con una classe XmlReader e restituisce l'oggetto deserializzato. Consente inoltre di specificare se il serializzatore deve verificare il corretto posizionamento su un elemento appropriato prima di eseguire il tentativo di serializzazione. (Esegue l'override di XmlObjectSerializer.ReadObject(XmlReader, Boolean)).
Metodo pubblico ToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
Metodo pubblico WriteEndObject(XmlDictionaryWriter) Scrive l'elemento XML di chiusura in un documento XML, utilizzando una classe XmlDictionaryWriter, che può essere mappato a JSON (JavaScript Object Notation). (Esegue l'override di XmlObjectSerializer.WriteEndObject(XmlDictionaryWriter)).
Metodo pubblico WriteEndObject(XmlWriter) Scrive l'elemento XML di chiusura in un documento XML, utilizzando una classe XmlWriter, che può essere mappato a JSON (JavaScript Object Notation). (Esegue l'override di XmlObjectSerializer.WriteEndObject(XmlWriter)).
Metodo pubblico WriteObject(Stream, Object) Serializza un oggetto specificato in dati JSON (JavaScript Object Notation) e scrive il risultato JSON in un flusso. (Esegue l'override di XmlObjectSerializer.WriteObject(Stream, Object)).
Metodo pubblico WriteObject(XmlDictionaryWriter, Object) Serializza un oggetto in XML che può essere mappato a JSON (JavaScript Object Notation). Scrive tutti i dati dell'oggetto, inclusi l'elemento XML di apertura, il contenuto e l'elemento di chiusura, con un oggetto XmlDictionaryWriter. (Esegue l'override di XmlObjectSerializer.WriteObject(XmlDictionaryWriter, Object)).
Metodo pubblico WriteObject(XmlWriter, Object) Serializza un oggetto in XML che può essere mappato a JSON (JavaScript Object Notation). Scrive tutti i dati dell'oggetto, inclusi l'elemento XML di apertura, il contenuto e l'elemento di chiusura, con una classe XmlWriter. (Esegue l'override di XmlObjectSerializer.WriteObject(XmlWriter, Object)).
Metodo pubblico WriteObjectContent(XmlDictionaryWriter, Object) Scrive il contenuto XML che può essere mappato a JSON (JavaScript Object Notation) utilizzando la classe XmlDictionaryWriter. (Esegue l'override di XmlObjectSerializer.WriteObjectContent(XmlDictionaryWriter, Object)).
Metodo pubblico WriteObjectContent(XmlWriter, Object) Scrive il contenuto XML che può essere mappato a JSON (JavaScript Object Notation) utilizzando la classe XmlWriter. (Esegue l'override di XmlObjectSerializer.WriteObjectContent(XmlWriter, Object)).
Metodo pubblico WriteStartObject(XmlDictionaryWriter, Object) Scrive l'elemento XML di apertura per la serializzazione di un oggetto in XML che può essere mappato a JSON (JavaScript Object Notation) utilizzando la classe XmlDictionaryWriter. (Esegue l'override di XmlObjectSerializer.WriteStartObject(XmlDictionaryWriter, Object)).
Metodo pubblico WriteStartObject(XmlWriter, Object) Scrive l'elemento XML di apertura per la serializzazione di un oggetto in XML che può essere mappato a JSON (JavaScript Object Notation) utilizzando una classe XmlWriter. (Esegue l'override di XmlObjectSerializer.WriteStartObject(XmlWriter, Object)).
In alto
Note

Utilizzare la classe DataContractJsonSerializer per serializzare le istanze di un tipo in un documento JSON e per deserializzare un documento JSON in un'istanza di un tipo. Ad esempio, è possibile creare un tipo denominato Person con proprietà che contengono dati essenziali, ad esempio un nome e un indirizzo. È quindi possibile creare e modificare un'istanza della classe Person e scrivere tutti i valori delle relative proprietà in un documento JSON per il recupero in un secondo momento. Tale documento JSON può essere successivamente deserializzato nella classe Person o in un'altra classe con un contratto dati equivalente.

Se si verifica un errore durante la serializzazione di una risposta in uscita nel server o se l'operazione di risposta genera un'eccezione per qualche altro motivo, è possibile che l'errore non venga restituito al client.

Informazioni sulla versione

.NET Framework

Supportato in: 4, 3.5

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1
Piattaforme

Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche

Riferimenti