标签:
【HttpHelper万能框架】教程目录贴 http://www.sufeinet.com/thread-9989-1-1.html
在我们使用万能框架抓取数据时,我相信用的最多的一种格式可能就是Json格式了。因为大部分Ajax是采用的这种格式。
今天万能框架帮助您实现一个将Json转为对象的方法。
也就是说根据Json要吧自动生成一个对象出来。
大家就可以随意的调用了。
再也不用对疼使用正则怎么分析了。
使用之前先引用命名空间
01
|
using CsharpHttpHelper; |
1.先来看一下简单类型的Json数据
Json数据如下
01
02
03
04
05
|
{ "Stationmaster" : "苏飞" , "Domain" : "www.sufeinet.com" , "SiteName" : "苏飞论坛" } |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
public class SiteInfo { /// <summary> /// 网站站长 /// </summary> public string Stationmaster { get ; set ; } /// <summary> /// 网站域名 /// </summary> public string Domain { get ; set ; } /// <summary> /// 网站名称 /// </summary> public string SiteName { get ; set ; } } |
01
02
03
|
string strjson = "{\"Stationmaster\":\"苏飞\",\"Domain\":\"www.sufeinet.com\",\"SiteName\":\"苏飞论坛\"}" ; SiteInfo objjson = (SiteInfo)HttpHelper.JsonToObject<SiteInfo>(strjson); |
执行效果
很简单吧。
这个只是一个简单Json数据类型
2.复杂Json类型也是一样解析
比如如下Json格式
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
|
[ { "Stationmaster" : "苏飞" , "Domain" : "www.sufeinet.com" , "SiteName" : "苏飞论坛" }, { "Stationmaster" : "李彦宏" , "Domain" : "www.baidu.com" , "SiteName" : "百度" }, { "Stationmaster" : "马云" , "Domain" : "www.taobao.com" , "SiteName" : "淘宝" } ] |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
|
StringBuilder sb = new StringBuilder(); sb.Append( "[" ); sb.Append( " {" ); sb.Append( " \"Stationmaster\": \"苏飞\"," ); sb.Append( " \"Domain\": \"www.sufeinet.com\"," ); sb.Append( " \"SiteName\": \"苏飞论坛\"" ); sb.Append( " }," ); sb.Append( " {" ); sb.Append( " \"Stationmaster\": \"李彦宏\"," ); sb.Append( " \"Domain\": \"www.baidu.com\"," ); sb.Append( " \"SiteName\": \"百度\"" ); sb.Append( " }," ); sb.Append( " {" ); sb.Append( " \"Stationmaster\": \"马云\"," ); sb.Append( " \"Domain\": \"www.taobao.com\"," ); sb.Append( " \"SiteName\": \"淘宝\"" ); sb.Append( " }" ); sb.Append( "]" ); List<SiteInfo> jsonlist = (List<SiteInfo>)HttpHelper.JsonToObject<List<SiteInfo>>(sb.ToString()); |
有了这个方法,以后大家如果再需要解析Json,只需要定义好对象的类就Ok了。
在线根据Json生成T类型的方法
http://tool.sufeinet.com/Creater/JsonClassGenerator.aspx
标签:
原文地址:http://www.cnblogs.com/Julietma/p/4959736.html