我是一名 Json 新手,对此还不够了解。
我有一个基于 Rest 的服务,它返回一个 json 字符串;
{"treeNode":[{"id":"U-2905","pid":"R","userId":"2905"},
{"id":"U-2905","pid":"R","userId":"2905"}]}
我一直在使用Json.net并尝试将字符串反序列化为对象等。我编写了一个扩展方法来帮助。
public static T DeserializeFromJSON<T>(this Stream jsonStream, Type objectType)
{
T result;
using (StreamReader reader = new StreamReader(jsonStream))
{
JsonSerializer serializer = new JsonSerializer();
try
{
result = (T)serializer.Deserialize(reader, objectType);
}
catch (Exception e)
{
throw;
}
}
return result;
}
我原本期望得到一个treeNode[]对象的数组。但是似乎只有在另一个对象的treeNode[]属性中才能正确反序列化。
public class treeNode
{
public string id { get; set; }
public string pid { get; set; }
public string userId { get; set; }
}
有没有一种方法可以从反序列化中直接获取一个简单的数组呢?
谢谢。