Newtonsoft序列化与反序列化有两个重载方法,带<T>和不带<T>的
如果将一个List<String>序列化为jsonStr后,再反序列化,会变成JArray
List<string> list=new List<string>();
list.Add("aa");
list.Add("bb");
list.Add("cc");
JsonConvert.SerializeObject(jsonStr);
var obj=JsonConvert.DeserializeObject(jsonStr);
如果这时候直接使用 obj as List<string>就会报错。就需要使用带<T>模板函数来处理。
var obj=JsonConvert.DeserializeObject<List<string>>(jsonStr);
普通类型如int,string可以不使用带<T>方法