Utilisez cette classe générique pour sérialiser/désérialiser JSON. Vous pouvez facilement sérialisation structure de données complexes comme celui-ci:
Dictionary<string, Tuple<int, int[], bool, string>>
à chaîne JSON, puis l'enregistrer dans un cadre d'application ou bien
public class JsonSerializer
{
public string Serialize<T>(T aObject) where T : new()
{
T serializedObj = new T();
MemoryStream ms = new MemoryStream();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
ser.WriteObject(ms, serializedObj);
byte[] json = ms.ToArray();
ms.Close();
return Encoding.UTF8.GetString(json, 0, json.Length);
}
public T Deserialize<T>(string aJSON) where T : new()
{
T deserializedObj = new T();
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(aJSON));
DataContractJsonSerializer ser = new DataContractJsonSerializer(aJSON.GetType());
deserializedObj = (T)ser.ReadObject(ms);
ms.Close();
return deserializedObj;
}
}
JSON.Net est bien pris en charge et il semble que Microsoft l'intention de adoptez-les eux-mêmes * "Nous intégrerons JSON.NET en tant que Serializer JSON par défaut dans l'API Web lors de la sortie de l'équipe Web, ce qui sera agréable." * sur http://www.hanselman.com/blog/ OnTheNightmareThatIsJSONDatesPlusJSONNETAndASPNETWebAPI.aspx – Liam
Soyez simplement conscient de la bibliothèque intégrée pour la ** performance ** de la sérialisation de JSon dans .Net! – Babak
@Babak que voulez-vous dire attention? S'il vous plaît élaborer. –