<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        asp.net(C#)解析Json的類代碼

        來源:懂視網 責編:小采 時間:2020-11-27 22:43:38
        文檔

        asp.net(C#)解析Json的類代碼

        asp.net(C#)解析Json的類代碼:本次工作內容是要將以下數據解析成.Net可以使用的數據,返回的數據除了header,其他的都是可變的,也就是說結構不是固定的。完全由用戶選擇,所以選擇了生成DataTable。 Json數據格式如下: 代碼如下:{dataSet:{ header:{ returnCo
        推薦度:
        導讀asp.net(C#)解析Json的類代碼:本次工作內容是要將以下數據解析成.Net可以使用的數據,返回的數據除了header,其他的都是可變的,也就是說結構不是固定的。完全由用戶選擇,所以選擇了生成DataTable。 Json數據格式如下: 代碼如下:{dataSet:{ header:{ returnCo

        本次工作內容是要將以下數據解析成.Net可以使用的數據,返回的數據除了header,其他的都是可變的,也就是說結構不是固定的。完全由用戶選擇,所以選擇了生成DataTable。
        Json數據格式如下:
        代碼如下:

        {"dataSet":{
        "header":{
        "returnCode":"0",
        "errorInfo":"HTTP請求錯誤",
        "version":"V1.0R010",
        "totalRows":"2000",
        "returnRows":"20"
        },
        "fieldDefine":{
        "assetId":"string",
        "serverIdcId":"int",
        "inputTime":"datetime"
        },
        "data":{"row":[
        {
        "AssetId":"TCNS2006888",
        "ServerIdcId":"1",
        "InputTime":"2008-12-12"
        },
        {
        "AssetId":"TCNS2006889",
        "ServerIdcId":"2",
        "InputTime":"2008-1-1"
        }
        ]}
        }
        }

        解析的類:
        代碼如下:

        using System;
        using System.Collections.Generic;
        using System.Text;
        using System.Data;
        using System.Web.Script.Serialization;
        namespace Tencent.Itil.Cmsi.Common
        {
        public class GeneralSearchResult
        {
        public Header header = new Header();
        private DataTable fieldDefine = new DataTable();
        /// <summary>
        /// 返回的數據結構定義,無數據
        /// </summary>
        public DataTable FieldDefine
        {
        get { return fieldDefine; }
        set { fieldDefine = value; }
        }
        private DataTable retrunData = new DataTable();
        /// <summary>
        /// 返回的數據,格式為DataTable,結構和FieldDefine中的結構一樣
        /// </summary>
        public DataTable RetrunData
        {
        get { return retrunData; }
        set { retrunData = value; }
        }
        /// <summary>
        /// 將json數據轉換為定義好的對象,數據轉換為DataTable
        /// </summary>
        /// <param name="jsonText"></param>
        /// <returns></returns>
        public static GeneralSearchResult GetTransformData(string jsonText)
        {
        GeneralSearchResult gsr = new GeneralSearchResult();
        JavaScriptSerializer s = new JavaScriptSerializer();
        Dictionary<string, object> JsonData = (Dictionary<string, object>)s.DeserializeObject(jsonText);
        Dictionary<string, object> dataSet = (Dictionary<string, object>)JsonData["dataSet"];
        Dictionary<string, object> header = (Dictionary<string, object>)dataSet["header"];
        Dictionary<string, object> fieldDefine = (Dictionary<string, object>)dataSet["header"];
        Dictionary<string, object> data = (Dictionary<string, object>)dataSet["data"];
        object[] rows = (object[])data["row"];
        gsr.header.Version = header["version"].ToString();
        gsr.header.ErrorInfo = header["errorInfo"].ToString();
        gsr.header.ReturnCode = header["returnCode"].ToString();
        gsr.header.ReturnRows = Convert.ToInt16(header["returnRows"]);
        gsr.header.TotalRows = Convert.ToInt16(header["totalRows"]);
        Dictionary<string, object> dicFieldDefine = (Dictionary<string, object>)dataSet["fieldDefine"];
        foreach (KeyValuePair<string, object> ss in dicFieldDefine)
        {
        gsr.FieldDefine.Columns.Add(ss.Key, typeof(string));
        }
        gsr.RetrunData = gsr.FieldDefine.Clone();
        foreach (object ob in rows)
        {
        Dictionary<string, object> val = (Dictionary<string, object>)ob;
        DataRow dr = gsr.RetrunData.NewRow();
        foreach (KeyValuePair<string, object> sss in val)
        {
        dr[sss.Key] = sss.Value;
        }
        gsr.RetrunData.Rows.Add(dr);
        }
        return gsr;
        }
        /// <summary>
        /// 數據文件頭定義
        /// </summary>
        public class Header
        {
        private string version;
        /// <summary>
        /// 版本
        /// </summary>
        public string Version
        {
        get { return version; }
        set { version = value; }
        }
        private string returnCode;
        /// <summary>
        /// 結果碼,0為正常,否則為有錯誤
        /// </summary>
        public string ReturnCode
        {
        get { return returnCode; }
        set { returnCode = value; }
        }
        private string errorInfo;
        /// <summary>
        /// 如果ReturnCode為非0時的錯誤信息
        /// </summary>
        public string ErrorInfo
        {
        get { return errorInfo; }
        set { errorInfo = value; }
        }
        private int totalRows;
        /// <summary>
        /// 查詢結果總行數
        /// </summary>
        public int TotalRows
        {
        get { return totalRows; }
        set { totalRows = value; }
        }
        private int returnRows;
        /// <summary>
        /// 返回的數據行數
        /// </summary>
        public int ReturnRows
        {
        get { return returnRows; }
        set { returnRows = value; }
        }
        }
        }
        }

        使用方法:
        GeneralSearchResult gsr = new GeneralSearchResult();
        gsr = GeneralSearchResult.GetTransformData(text);

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        asp.net(C#)解析Json的類代碼

        asp.net(C#)解析Json的類代碼:本次工作內容是要將以下數據解析成.Net可以使用的數據,返回的數據除了header,其他的都是可變的,也就是說結構不是固定的。完全由用戶選擇,所以選擇了生成DataTable。 Json數據格式如下: 代碼如下:{dataSet:{ header:{ returnCo
        推薦度:
        標簽: 代碼 解析 net
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产老女人精品免费视频| 精品国产污污免费网站aⅴ | 亚洲欧美日韩中文字幕在线一区 | 亚洲人成片在线观看| 8x8x华人永久免费视频| 色噜噜综合亚洲av中文无码| 98精品全国免费观看视频| 亚洲综合久久综合激情久久| 永久黄色免费网站| 亚洲一区二区久久| 在线免费观看一区二区三区| 狼人大香伊蕉国产WWW亚洲| 亚洲成av人片天堂网老年人| 一级毛片一级毛片免费毛片| 亚洲愉拍99热成人精品热久久| 免费观看久久精彩视频| 亚洲经典在线中文字幕| 成年女人毛片免费播放视频m| 亚洲精品久久无码av片俺去也| 亚洲国产精品13p| 天黑黑影院在线观看视频高清免费 | 亚洲午夜AV无码专区在线播放 | 亚洲1区2区3区精华液| 日韩a级毛片免费观看| 麻豆一区二区三区蜜桃免费| 亚洲综合熟女久久久30p| 久久国产色AV免费看| 亚洲中文字幕精品久久| 亚洲国产精品无码久久久久久曰| 91免费在线视频| 亚洲一欧洲中文字幕在线| 国产成人aaa在线视频免费观看 | 在线观看片免费人成视频无码| 久久久久久亚洲精品成人| 午夜a级成人免费毛片| 国产成人无码免费网站| 亚洲图片激情小说| 亚洲裸男gv网站| 在线观看成人免费视频不卡| 亚洲av永久无码天堂网| 久久精品国产精品亚洲色婷婷|