using System.Runtime.Serialization.Json;
myclass.People people = new myclass.People();
people.Id = 1;
people.Name = "小白";
myclass.People people2 = new myclass.People();
people2.Id = 2;
people2.Name = "小黑";
List<myclass.People> peoples = new List<myclass.People>();
peoples.Add(people);
peoples.Add(people2);
DataContractJsonSerializer json = new DataContractJsonSerializer(peoples.GetType());
string szJson = "";
//序列化
using (System.IO.MemoryStream st = new System.IO.MemoryStream())
{
json.WriteObject(st, peoples);
szJson = Encoding.UTF8.GetString(st.ToArray());
MessageBox.Show(szJson);
}
//反序列化
using (System.IO.MemoryStream ms = new System.IO.MemoryStream(Encoding.UTF8.GetBytes(szJson)))
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(List<myclass.People>));
List<myclass.People> _people = (List<myclass.People>)serializer.ReadObject(ms);
foreach (myclass.People p in _people)
{
MessageBox.Show(p.Id.ToString() + p.Name.ToString());
}
//MessageBox.Show(_people.Id.ToString() + _people.Name.ToString());
}