请问这个从网站API取得的JSON反序列化如果构建类?

作者:超级管理员 更新时间:2017-09-12 09:58:49 来源:未知 点击:15642
{    "HeWeather5": [        {            "basic": {                "city": "镇江",                 "cn
{
    "HeWeather5": [
        {
            "basic": {
                "city": "镇江", 
                "cnty": "中国", 
                "id": "CN101190301", 
                "lat": "32.20440292", 
                "lon": "119.45275116", 
                "update": {
                    "loc": "2017-09-07 23:46", 
                    "utc": "2017-09-07 15:46"
                }
            }, 
            "daily_forecast": [
                {
                    "astro": {
                        "mr": "19:07", 
                        "ms": "06:19", 
                        "sr": "05:41", 
                        "ss": "18:19"
                    }, 
                    "cond": {
                        "code_d": "103", 
                        "code_n": "101", 
                        "txt_d": "晴间多云", 
                        "txt_n": "多云"
                    }, 
                    "date": "2017-09-07", 
                    "hum": "83", 
                    "pcpn": "5.5", 
                    "pop": "52", 
                    "pres": "1010", 
                    "tmp": {
                        "max": "27", 
                        "min": "20"
                    }, 
                    "uv": "8", 
                    "vis": "15", 
                    "wind": {
                        "deg": "83", 
                        "dir": "东风", 
                        "sc": "微风", 
                        "spd": "10"
                    }
                }, 
                {
                    "astro": {
                        "mr": "19:44", 
                        "ms": "07:20", 
                        "sr": "05:42", 
                        "ss": "18:18"
                    }, 
                    "cond": {
                        "code_d": "101", 
                        "code_n": "101", 
                        "txt_d": "多云", 
                        "txt_n": "多云"
                    }, 
                    "date": "2017-09-08", 
                    "hum": "81", 
                    "pcpn": "0.0", 
                    "pop": "0", 
                    "pres": "1011", 
                    "tmp": {
                        "max": "29", 
                        "min": "22"
                    }, 
                    "uv": "8", 
                    "vis": "20", 
                    "wind": {
                        "deg": "79", 
                        "dir": "东风", 
                        "sc": "微风", 
                        "spd": "11"
                    }
                }, 
                {
                    "astro": {
                        "mr": "20:21", 
                        "ms": "08:22", 
                        "sr": "05:43", 
                        "ss": "18:17"
                    }, 
                    "cond": {
                        "code_d": "104", 
                        "code_n": "305", 
                        "txt_d": "阴", 
                        "txt_n": "小雨"
                    }, 
                    "date": "2017-09-09", 
                    "hum": "85", 
                    "pcpn": "0.0", 
                    "pop": "1", 
                    "pres": "1010", 
                    "tmp": {
                        "max": "27", 
                        "min": "23"
                    }, 
                    "uv": "5", 
                    "vis": "19", 
                    "wind": {
                        "deg": "97", 
                        "dir": "东风", 
                        "sc": "微风", 
                        "spd": "13"
                    }
                }
            ], 
            "status": "ok"
        }
    ]
}



下面是我写的,[]表示阵列,好像最外面的HeWeather5没写对,请帮忙看一下
==========================================================================
public class HeWeather5
    {
        public Basic basic = new Basic();
        public List<Dforecast> daliyForeast = new List<Dforecast>();
        public string status { get; set; }
    }
    public class Basic
    {
        public string city { get; set; }   //"city": "镇江", 
        public string cnty { get; set; }   // "cnty": "中国", 
        public string id { get; set; }   // "id": "CN101190301", 
        public string lat { get; set; }  //  "lat": "32.20440292", 
        public string lon { get; set; }  //  "lon": "119.45275116", 
        public Update update = new Update();
    }

    public class Update
    {
        public string loc { get; set; }
        public string utc { get; set; }
    }
    public class Dforecast
    {
        public Astro astro = new Astro();
        public Cond cond = new Cond();
        public string date { get; set; }
        public string hum { get; set; }    //"hum": "83", 
        public string pcpn { get; set; } //  "pcpn": "5.5", 
        public string pop { get; set; }  //        "pop": "52", 
        public string pres { get; set; }  //        "pres": "1010", 
        public Tmp tmp = new Tmp();    // "tmp": {
        public string uv { get; set; }   //"uv": "8", 
        public string vis { get; set; }      //  "vis": "15", 
        public Wind wind = new Wind();
    }
    public class Astro
    {
        public string mr { get; set; }       //        "mr": "19:07" 
        public string ms { get; set; }       //     "ms": "06:19"
        public string sr { get; set; }         // sr: "05:41" 
        public string ss { get; set; }    //        "ss": "18:19"
    }
    public class Cond
    {
        public string code_d { get; set; }      //      "code_d": "103", 
        public string code_n { get; set; }  //          "code_n": "101", 
        public string txt_d { get; set; }        //    "txt_d": "晴间多云", 
        public string txt_n { get; set; }//            "txt_n": "多云"
    }
    public class Tmp
    {
        public string max { get; set; }
        public string min { get; set; }
    }
    public class Wind
    {
        public string deg { get; set; }
        public string dir { get; set; }  // 风向
        public string sc { get; set; }
        public string spd { get; set; }
    }

以下是关于本问题的解决方案:

解决方案1、
复制这段json,在VS中打开一个cs文件并编辑,然后选择“编辑"->”选择性粘贴“->"将json粘贴为类",再稍作修改就可以了。
解决方案2、
http://blog.csdn.net/starfd/article/details/48686239
vs自动帮你生成
解决方案3、
#1,2已经说了,就不多说了
解决方案4、
谢谢楼上两位哥们。

解决方案5、
http://tool.zhaotool.com/json/cdomain.html

推荐阅读

热门内容

c# 引用webservice 出现问题

我在浏览器浏览没问题就是在项目中添加服务...

有人这么黑易语言,连我都看不下去了

本帖最后由caozhy于2017-09-...

窗体加载时,代码未执行完就弹出了窗体

不知道是这样写不合理,还是我哪里写错了呢...

“易语言”突然火起来是什么梗

本帖最后由caozhy于2017-09-...

C#实现OPC通讯

请教大神,用C#编写程序利用OPC在同一...

C#使用Newtonsoft.Json如

例如:用户名:kkk@gmail.com...

C#有前辈帮我看下这是ASP.NET的什

开始以为是MVC,但是没有找到APP_S...

无法加载 DLL“OraOps12.dl

本帖最后由LeehomeYU于2017-...

使用存储过程动态建表及频繁插入数据时,存

1、’在程序中存储过程是程序中创建吗?还...

dataTable 去重(单号一样的,把

现在是这样的,我需要把003在一行显示用...

最新内容

请问这个从网站API取得的JSON反序列化如果构建类?

{    "HeWeather5": [        {           ...

winform在TreeView上单击子节点取到imageindex的值为-1

winform运行后在TreeView上单击子节点取到imageindex的值为...

c# 引用webservice 出现问题,如下图

我在浏览器浏览没问题就是在项目中添加服务引用的时候出现如图的问题,望指教!以下是...

小问题,求助

我在一个教学视频上看到的,老师在演示时,VS左边有小灯泡,小锤子 的提示,为什么...

有人这么黑易语言,连我都看不下去了

本帖最后由caozhy于2017-09-1113:29:16编辑不是说好了用易语...

窗体加载时,代码未执行完就弹出了窗体

不知道是这样写不合理,还是我哪里写错了呢,每次窗体加载时代码还未全部执行完成,就...

正则表达式:是否为十六进制

本帖最后由OneOnce于2017-09-1109:51:38编辑从文本读出的字...

win10 不小心把.net4.5卸载了 装不上怎么办

才装的系统,不小心把系统自带的.net 4.5卸载了 现在装不上 有没有 大神 ...

WPF用户控件(UserControl)中能否实现追加控件或Content?

问题描述,网上很少有关于WPF的资料,我想的知道WPF用户控件在其他程序总引用的...

worksheet.Cells问题

如上图,第一张图是DataView的显示,结果是对得。第二张图是导出到Excel...

winform想画一个实心点

 g.DrawString(".", new Font("Arial", 40)...

我写的这个JS代码,逻辑上有问题吗? 为什么执行不了onclick后的效果

“易语言”突然火起来是什么梗

本帖最后由caozhy于2017-09-0108:47:22编辑请看此贴:htt...

菜鸟求助, VBA转C#,急急急

公司服务器做迁移, server1迁移到server2, 老服务器上的vba程序...

npoi合并后怎么给单元格赋值?合并取得值一直是第一个单元格的值

            //填充内容               for (in...

求一个能用的webp转img的dll

RT,找了半天没找到,nuget包装的Imazen也不好使,不知道为啥var i...

一个类里多少行代码是你的底线?

发出来大家探讨下,因为在项目过程中很多同事喜欢把所有的代码堆一个类里,动辄几千行...

C#实现OPC通讯

请教大神,用C#编写程序利用OPC在同一时间读取写入若干个参数,是属于同步通讯还...

为什么就是错啊!!jqgrid is not a function

html:@{    ViewBag.Title = "Index";}@sec...

WPF 获取鼠标相对canvas的坐标

求助各位大大:我在canvas定义了canva_MouseLeftButtonD...