我有以下来自服务器的响应,看起来像这样JSON字符串:如何分割多JSON数据结果
{
"resultCount": 2,
"results": [
{
"apartmentNo": "",
"city": "BEOGRAD",
"floor": "",
"houseNo": "99",
"houseNo2": "",
"phoneNo": "011\/000-0000",
"postalCode": "11000",
"region": "SOME REGION",
"street": "SOME STREET",
"firstName": "FNAME",
"lastName": "LNAME"
},
{
"apartmentNo": "",
"city": "BEOGRAD",
"floor": "",
"houseNo": "99",
"houseNo2": "",
"phoneNo": "011\/000-0000",
"postalCode": "11000",
"region": "SOME REGION",
"street": "SOME STREET",
"firstName": "FNAME",
"lastName": "LNAME"
}
]
}
如可以看出,有两个结果在JSON响应属于“结果”它被分隔为{... first ...},{... second ...}。我已经知道如何处理只有一个结果,但我应该如何处理像这个json例子一样的两个或多个结果?
我想将此数据添加到数据网格视图以向用户显示结果。
我的代码来解析一个结果是:
JObject o = JObject.Parse(responseText);
string ime = o["results"]["firstName"].ToString();
string prezime = o["results"]["lastName"].ToString();
string adresa = o["results"]["street"].ToString() + " " + o["results"]["houseNo"].ToString();
string mesto = o["results"]["city"].ToString();
string pbroj = o["results"]["postalCode"].ToString();
string tel = o["results"]["phoneNo"].ToString();
dataGridView1.Rows.Clear();
dataGridView1.Rows.Add(ime, prezime, adresa, mesto, pbroj, tel);
我还发现了一个方法,在这里,以识字trought使用jtokens所有孩子的,但必须有这些分析在等多个阵列的一个更好的办法,我正在使用Newtonsoft.Json。
非常感谢。
'o.Value <列表>( “结果”)'? –
将其强制转换为强类型对象并使用Newtonsoft Json库反序列化到模型中可能会更容易。有一个强类型的模型也可以帮助你绑定到网格很容易:) – daveBM