Condividi tramite


Serializzazione JSON

In questo esempio viene illustrato come utilizzare DataContractJsonSerializer per serializzare e deserializzare i dati nel formato JSON (JavaScript Object Notation). Questo motore della serializzazione converte i dati JSON in istanze dei tipi .NET Framework e li riconverte in dati JSON. DataContractJsonSerializer supporta gli stessi tipi di DataContractSerializer. Il formato dati JSON è particolarmente utile quando si creano applicazioni Web di tipo AJAX (Asynchronous JavaScript and XML). Il supporto AJAX in Windows Communication Foundation (WCF) è ottimizzato per l'utilizzo con ASP.NET AJAX tramite il controllo ScriptManager. Per esempi dell’utilizzo di Windows Communication Foundation (WCF) con ASP.NET AJAX, vedere Esempi di AJAX.

Nota

Per poter essere compilato ed eseguito, l'esempio richiede che sia installato .NET Framework versione 3.5. Per aprire il progetto e i file della soluzione è necessario Visual Studio 2008.

Nota

La procedura di installazione e le istruzioni di compilazione per questo esempio si trovano alla fine dell'argomento.

Nell'esempio viene utilizzato un contratto dati Person per illustrare la serializzazione e la deserializzazione.

[DataContract]
    class Person
    {
        [DataMember]
        internal string name;

        [DataMember]
        internal int age;
    }

Per serializzare un'istanza di tipo Person in formato JSON, creare prima l'elemento DataContractJsonSerializer e utilizzare il metodo WriteObject per scrivere i dati JSON in un flusso.

Person p = new Person();
//Set up Person object...
MemoryStream stream1 = new MemoryStream();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Person));
ser.WriteObject(stream1, p);

Il flusso di memoria contiene dati JSON validi.

{“age”:42,”name”:”John”}

Nell'esempio viene illustrata la deserializzazione da dati JSON a un oggetto. Si ritorna quindi all'inizio del flusso e si chiama ReadObject.

Person p2 = (Person)ser.ReadObject(stream1);

Esaminando l'oggetto p2 si evince che i dati JSON sono stati deserializzati correttamente.

Per impostare, compilare ed eseguire l'esempio

  1. Compilare la soluzione JsonSerialization.sln come descritto in Generazione degli esempi Windows Communication Foundation.

  2. Eseguire l'applicazione console risultante.

Send comments about this topic to Microsoft.
© 2007 Microsoft Corporation. All rights reserved.