国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C# > 正文

用Newtonsoft將json串轉(zhuǎn)為對(duì)象的方法(詳解)

2019-10-29 21:11:45
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

首先,將json串轉(zhuǎn)為一個(gè)JObject對(duì)象:

JObject jo = (JObject)JsonConvert.DeserializeObject(CurrentSelectedItemReq);

這個(gè)JObject是一個(gè)“值對(duì)”類(lèi)型,比如說(shuō)我們的json串是這樣:

{ "rows":[  [   {"NumIid":"001"},   {"PicUrl":"xxx.png"},   {"Title":"xxxxx"},   {"Price":"xxx"},   {"OuterId":"xxxx"}   ],  [   {"NumIid":"002"},   {"PicUrl":"xxx.png"},   {"Title":"xxxxx"},   {"Price":"xxx"},   {"OuterId":"xxxx"}   ],  [   {"NumIid":"003"},   {"PicUrl":"xxx.png"},   {"Title":"xxxxx"},   {"Price":"xxx"},   {"OuterId":"xxxx"}   ]  ]}

那么可以jo["rows"]就是一個(gè)數(shù)組,如果這個(gè)反之如果不是數(shù)組可能是一個(gè)對(duì)象,那么我們根據(jù)他實(shí)際是一個(gè)什么值來(lái)進(jìn)行強(qiáng)制轉(zhuǎn)換。

以上面這個(gè)json串為例,我們這樣取到這個(gè)數(shù)組:

JArray arr = (JArray)jo["rows"];

我們發(fā)現(xiàn)這個(gè)數(shù)組里面還是一個(gè)數(shù)組,而里層數(shù)組里面才是一個(gè)object,那么我們可以這樣取:

for (int i = 0; i < arr.Count; i++)     {      JArray arr2 = (JArray)arr[i];      for (int j = 0; j < arr2.Count; j++)       {        JObject obj = (JObject)arr2[j];        Response.Write(obj["NumIid"]);        Response.End();      }            }

如果實(shí)際是一個(gè)數(shù)組,我們就用JArray強(qiáng)制轉(zhuǎn)換,如果實(shí)際是一個(gè)值對(duì),我們就用JObject強(qiáng)制轉(zhuǎn)換。

最后一層應(yīng)該是一個(gè)值對(duì)類(lèi)型的object,怎么把這些值全部取出來(lái)?

最后應(yīng)該是形如:

{"NumIid":"003"}

取值很簡(jiǎn)單,直接:

string str=obj["NumIid"];

問(wèn)題是有時(shí)候這個(gè)obj是這樣的:

{"PicUrl":"xxx.png"}

而且你不知道他什么時(shí)候是什么。

這時(shí)應(yīng)該這樣取:

foreach (KeyValuePair<string, JToken> kp in obj)         {          Response.Write(kp.Key);          Response.Write("=");          Response.Write(kp.Value);          Response.End();        }

以上這篇用Newtonsoft將json串轉(zhuǎn)為對(duì)象的方法(詳解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到c#教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 永新县| 常德市| 堆龙德庆县| 邻水| 穆棱市| 太仆寺旗| 沿河| 英山县| 肇源县| 通城县| 罗田县| 咸阳市| 抚远县| 襄汾县| 连云港市| 双辽市| 固镇县| 桦甸市| 阿拉善右旗| 建水县| 乡城县| 民县| 虎林市| 雷州市| 惠安县| 呼伦贝尔市| 平武县| 开鲁县| 米易县| 朝阳区| 双牌县| 庆城县| 文安县| 沂水县| 保山市| 阜康市| 东莞市| 凤台县| 台北市| 荔浦县| 广西|