成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù),小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

南芬ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

提出問題

一般API接口都會(huì)有一個(gè)自己定義的標(biāo)準(zhǔn)的響應(yīng)的數(shù)據(jù)格式,比如這位同學(xué)對接的API接口數(shù)據(jù)格式說明(如下圖),從圖中我們可以看到code節(jié)點(diǎn)和message節(jié)點(diǎn)是固定響應(yīng)頭,唯一變化的是data節(jié)點(diǎn)。那么大家有沒有想到變化的類型在C#中我們可以用什么類型進(jìn)行替代呢?答案想必大家都知道,那就是泛型T。

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

分析問題

先來一個(gè)簡單一點(diǎn)的JSON格式:

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

再來稍微一點(diǎn)復(fù)雜的JSON格式

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

如果接口字段少一點(diǎn)的話,我們還可以JSON節(jié)點(diǎn)通過手動(dòng)進(jìn)行Mapping映射為C#實(shí)體對象屬性。那么如果接口字段比較多,數(shù)據(jù)類型比較復(fù)雜,而且層級嵌套比較深的話,有沒有簡單快速的方式進(jìn)行自動(dòng)化的方式自動(dòng)生成Mapping映射我們想要的C#實(shí)體對象呢?答案:是肯定的?。?!接下來阿笨將給大家推薦幾種方式,敬請拭目以待。

解決問題

1)、在線json生成C#實(shí)體工具類,這里阿笨推薦下面兩款

http://www.jsons.cn/jsontomodel/

http://www.bejson.com/convert/json2csharp

使用方式很簡單,復(fù)制JSON格式字符串,直接點(diǎn)擊生成C#實(shí)體對象類。

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

2)、VS2019自動(dòng)格式轉(zhuǎn)換。

1、復(fù)制你要轉(zhuǎn)換的JSON格式字符串。(記住一定要先復(fù)制自己想要轉(zhuǎn)換的JSON格式字符串哦)

2、打開VS2019(其他低版本VS版本阿笨沒測試,自己去試一下哦),找到【編輯】-【選擇性粘貼】-【將JSON粘貼為類】

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

所有的工具都不是萬能的,轉(zhuǎn)換后的格式需要自己驗(yàn)證一下是否合理哦。不過大家放心,大部分的JSON類型的字符串類型都可以做到一鍵生成。哈哈,有點(diǎn)類似代碼生成器的感覺,太爽了。

嘮叨了這么多,上干貨

給大家寫了幾個(gè)示例DEMO,只要能夠掌握這幾個(gè)示例,以后解析任何復(fù)雜類型的JSON字符串都沒有障礙了。

核心的一句話是:json字符串反序列化為C#對象,C#對象序列化為JSON字符串。

示例一:簡單格式的JSO你字符串:

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

示例二:稍微復(fù)雜一點(diǎn)的字符串

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

示例三:Dictionary<string, object> 轉(zhuǎn)JSON字符串

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

示例四:數(shù)組[] 轉(zhuǎn)JSON字符串

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

示例五:集合轉(zhuǎn)JSON數(shù)組

JSON代碼:

{

"ids":[1,2,3]

}

對應(yīng)的生成C#代碼

public class OrderInfo

{

    public List<int> ids { get; set; }

}

C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)

關(guān)于“C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。

網(wǎng)頁題目:C#怎么解析復(fù)雜的JSON格式接口數(shù)據(jù)
網(wǎng)頁URL:http://jinyejixie.com/article44/joooee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)網(wǎng)站設(shè)計(jì)公司、軟件開發(fā)、營銷型網(wǎng)站建設(shè)、用戶體驗(yàn)、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
南丹县| 宾川县| 洪江市| 池州市| 祁东县| 高陵县| 甘肃省| 志丹县| 陆丰市| 婺源县| 浦城县| 长海县| 当雄县| 泗洪县| 旬邑县| 上饶县| 岳普湖县| 剑川县| 琼海市| 临汾市| 册亨县| 林西县| 龙海市| 富民县| 苏尼特左旗| 阿城市| 甘洛县| 西和县| 惠水县| 民丰县| 克山县| 敖汉旗| 扎鲁特旗| 郁南县| 云梦县| 蕲春县| 信丰县| 南京市| 云和县| 抚顺县| 元朗区|