我在我的应用程序中使用“Newtonsoft.Json.Linq.JObject”。
我有一个以下列格式接收JObject的方法:
{
"PersonnelIds": "[31,32,33,34]"
}
我想将PersonnelIds的内容解析为整数列表。
这样做的最佳方式是什么?
答案 0 :(得分:6)
我可以看到PersonnelIds的值写成字符串"[31,32,33,34]"
所以要用这个语法解析它你可以使用下面的代码
JObject jObject = JObject.Parse(myjson);
JToken jToken = jObject.GetValue("PersonnelIds");
var array = JArray.Parse(jToken.Value<string>()).Select(x => (int)x).ToArray();
如果您的值不是字符串,那么您的JSON就像{"PersonnelIds": [31,32,33,34]
}
那么您可以使用以下代码解析它
JObject jObject = JObject.Parse(myjson);
JToken jToken = jObject.GetValue("PersonnelIds");
int[] array = jToken.Values<int>().ToArray();
答案 1 :(得分:0)
创建一个类来反序列化你的json:
要创建类,可以在剪贴板中复制json并使用
Edit / Paste special / Paste JSON as class
在visual studio中(我使用vs2013)。
然后反序列化你的字符串。
上查看我的解决方案