JSON Serialization
Cet exemple montre comment utiliser le DataContractJsonSerializer pour sérialiser et désérialiser des données au format JSON (JavaScript Objet Notation). Ce moteur de sérialisation convertit des données JSON en instances de types .NET Framework et à nouveau en données JSON. DataContractJsonSerializer prend en charge les mêmes types que DataContractSerializer. Le format de données JSON est particulièrement utile lors de l'écriture d'applications Web de style JavaScript et XML (AJAX) asynchrones. La prise en charge d'AJAX dans Windows Communication Foundation (WCF) est optimisée pour une utilisation avec AJAX ASP.NET à travers le contrôle ScriptManager. Pour obtenir des exemples d'utilisation de Windows Communication Foundation (WCF) avec AJAX ASP.NET, consultez les Exemples AJAX.
Remarque : |
---|
Cet exemple requiert l'installation de .NET Framework version 3.5 pour pouvoir être généré et exécuté. Visual Studio 2008 est requis pour l'ouverture des fichiers solution et projet. |
Remarque : |
---|
La procédure d'installation ainsi que les instructions de génération relatives à cet exemple figurent à la fin de cette rubrique. |
L'exemple utilise un contrat de données Person
pour illustrer la sérialisation et la désérialisation.
[DataContract]
class Person
{
[DataMember]
internal string name;
[DataMember]
internal int age;
}
Pour sérialiser une instance du type Person
en JSON, créez d'abord le DataContractJsonSerializer et utilisez la méthode WriteObject pour écrire des données JSON dans un flux.
Person p = new Person();
//Set up Person object...
MemoryStream stream1 = new MemoryStream();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Person));
ser.WriteObject(stream1, p);
Le flux de mémoire contient des données JSON valides.
{“age”:42,”name”:”John”}
L'exemple illustre la désérialisation de données JSON dans un objet. Ensuite, vous rembobinez le flux et appelez ReadObject.
Person p2 = (Person)ser.ReadObject(stream1);
L'examen de l'objet p2
révèle que les données JSON ont été correctement désérialisées.
Pour configurer, générer et exécuter l'exemple
Générez la solution JsonSerialization.sln telle que décrite dans la section Génération des exemples Windows Communication Foundation.
Exécutez l'application console qui en résulte.
Send comments about this topic to Microsoft.
© 2007 Microsoft Corporation. All rights reserved.