国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
C# 技巧(3) C# 操作 JSON

RestAPI中, 經(jīng)常需要操作json字符串,  需要把json字符串"反序列化"成一個(gè)對(duì)象, 也需要把一個(gè)對(duì)象"序列化"成一字符串。

C# 操作json,  比較簡(jiǎn)單。  本文介紹幾種方法

 

閱讀目錄

  1. 步驟
  2. 了解json的語(yǔ)法
  3. 創(chuàng)建實(shí)體類的例子
  4. 自動(dòng)生成JSON的實(shí)體類
  5. 使用第三方工具 Newtonsoft.Json.dll

步驟

Json 字符串 反序列化成對(duì)象 共需要2步:

第一步:建立相應(yīng)的實(shí)體類

第二步: 調(diào)用方法把Json字符串"反序列化"成對(duì)象

了解json的語(yǔ)法

首先要了解json的語(yǔ)法,這樣才能知道怎么創(chuàng)建實(shí)體類.

Json 的語(yǔ)法很簡(jiǎn)單, 就四條

 

  • 數(shù)據(jù)在名稱/值對(duì)中
  • 數(shù)據(jù)由逗號(hào)分隔
  • 花括號(hào)保存對(duì)象
  • 方括號(hào)保存數(shù)組

創(chuàng)建實(shí)體類的例子

{"FirstName":"小坦克","LastName":"Tank","Age":30}

相應(yīng)的實(shí)體類可以為

    public class Person     {        public String FirstName        { get; set; }        public String LastName        { get; set; }        public int Age        { get; set; }    }

 

自動(dòng)生成JSON的實(shí)體類

一個(gè)復(fù)雜的實(shí)體類,我們自己去寫(xiě)的話,可能需要1個(gè)小時(shí)以上。 那有沒(méi)有工具能直接生成實(shí)體類呢,這樣能方便太多了。  當(dāng)然有

http://jsonclassgenerator.codeplex.com/  ----開(kāi)源的winform工具。

 

 

使用第三方工具 Newtonsoft.Json.dll

優(yōu)點(diǎn):  使用非常方便.   看個(gè)例子就知道怎么用了

下載地址   http://james.newtonking.com/json

 

代碼示例:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using Newtonsoft.Json;namespace JsonDemo{    class Program    {        static void Main(string[] args)        {            string personJson = "{ 'FirstName': '小坦克','LastName':'Tank xiao', 'Age':'30', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac編程', 'Price':'39.9'}]}";            string allMoveJson = @"[{ 'FirstName': '小坦克','LastName':'Tank xiao', 'Age':'30', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac編程', 'Price':'39.9'}]},{                              'FirstName': '小坦克2','LastName':'Tank xiao2', 'Age':'40', 'Books':[{'BookName':'c#', 'Price':'29.9'},{'BookName':'Mac編程', 'Price':'39.9'}]}]";            // 反序列化 單個(gè)對(duì)象            Person oneMovie = JsonConvert.DeserializeObject<Person>(personJson);            // 反序列化 對(duì)象集合            List<Person> allMovie = JsonConvert.DeserializeObject<List<Person>>(allMoveJson);            Console.WriteLine(oneMovie.FirstName);            Console.WriteLine(allMovie[1].FirstName);            // 序列化            string afterJson = JsonConvert.SerializeObject(allMovie);        }    }    public class Person    {        public String FirstName        { get; set; }        public String LastName        { get; set; }        public int Age        { get; set; }        public List<Book> Books        { get; set; }    }    public class Book    {        public string BookName        { get; set; }        public string Price        { get; set; }    }}

 

 

附: C# 使用技巧 (連載中, 敬請(qǐng)期待)

C# 技巧(1) C# 轉(zhuǎn)換時(shí)間戳

C# 技巧(2) C# 操作 JSON

 

 

如果您看了本篇博客,覺(jué)得對(duì)您有所收獲,請(qǐng)點(diǎn)擊右下角的 [推薦]

如果您想轉(zhuǎn)載本博客,請(qǐng)注明出處

如果您對(duì)本文有意見(jiàn)或者建議,歡迎留言

感謝您的閱讀,請(qǐng)關(guān)注我的后續(xù)博客

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JS中的JSON對(duì)象
JSON以及Java轉(zhuǎn)換JSON的方法
Json 語(yǔ)法 格式
用 Python 的 Template 類生成文件報(bào)告
JSON Views 高級(jí)用法
json簡(jiǎn)介
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服