JSON数据转换到POCO的代码
2023-09-14 08:57:24 时间
转载:http://www.cnblogs.com/wintersun/archive/2012/09/14/2684708.html
在Visual Studio 2012中轻松把JSON数据转换到POCO的代码,首先你需要安装Web Essentials 2012。在VS2012中,任何cs文件中单击右键就出现这样的菜单:
以这个 http://channel9.msdn.com/niners/CapSoft/achievements/visualstudio?json=true&raw=true URL为示例, 请求后将返回JSON数据:
{"Name":"CapSoft","FriendlyName":"JPHellemons","Achievements":[{"Name":"MoreThan10StepOver","CurrentNumber":11,"DateEarned":"2012-08-22T14:00:23.9742427+02:00"},{"Name":"UsedOrganizedUsings50Achievement","CurrentNumber":3},{"Name":"Regions10Achievement","DateEarned":"2012-01-19T16:04:10.7662105+01:00"},{"Name":"CloseAllButThis10Achievement","CurrentNumber":8},{"Name":"MoreThan10StepInto","CurrentNumber":11,"DateEarned":"2012-08-22T14:00:21.8049672+02:00"},{"Name":"ExtensionsAchievement5","DateEarned":"2012-03-15T09:37:43.3473414+01:00"},{"Name":"ExtensionsAchievement10","DateEarned":"2012-03-15T09:37:43.5283517+01:00"},{"Name":"InstallAndRegisterForAchievements","DateEarned":"2012-03-15T09:37:43.7173626+01:00"},{"Name":"BraveNewWorldAchievement","DateEarned":"2012-08-22T14:43:54.1176689+02:00"},{"Name":"ReferencedAssemblies25","DateEarned":"2012-08-22T14:44:54.1723276+02:00"},{"Name":"MoreThan1000LOC","DateEarned":"2012-08-23T09:39:37.8062693+02:00"},{"Name":"MoreThan30EnumFieldsAchievement","DateEarned":"2012-08-23T09:39:44.3466433+02:00"},{"Name":"LongerThan300LocAchievement","DateEarned":"2012-08-23T09:39:44.6546610+02:00"},{"Name":"EqualOpportunistAchievement","DateEarned":"2012-08-23T09:39:44.7196647+02:00"},{"Name":"GotoAchievement","DateEarned":"2012-08-28T09:55:57.0744434+02:00"},{"Name":"MoreThan10OverloadsAchievement","DateEarned":"2012-08-29T15:08:46.8305656+02:00"}]}
COPY这些数据剪贴版,执行 “Paste JSON as Classes”, 在IDE中我们马上生成这样的代码:
public class Achievement
{
public string Name { get; set; }
public int CurrentNumber { get; set; } public DateTime DateEarned { get; set; }
}
public class Parent
{
public string Name { get; set; }
public string FriendlyName { get; set; } public Achievement[] Achievements { get; set; }
}
我们还没写任何代码,接下来我们从Nuget安装一个JSON.NET的类库,用写下面三行代码就轻易获得数据对象:
WebClient wc = new WebClient();
string json = wc.DownloadString("http://channel9.msdn.com/niners/CapSoft/achievements/visualstudio?json=true&raw=true");
var data = JsonConvert.DeserializeObject<Parent>(json);
好了,到这里为止,由此可见我们编码越来越轻松了,实际上我们还可以处理JSONP的数据,希望对您开发有帮助。
相关文章
- 实例解析java + jQuery + json工作过程(获取JSON数据)
- 数据库转换日记---从MSSQL Server导数据到MySQL
- JSON与JAVA数据的相互转换
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
- OpenCV 基础知识------图像创建、访问、转换
- 评谈新经济:新经济动能转换中的“大数据要素”
- GIS空间参考及坐标转换
- ETL工具之Kettle的简单使用一(不同数据库之间的数据抽取-转换-加载)
- C# 获取xml数据,并转换为dataset
- Atitit 持久化 Persistence概念的艺术 目录 1. 持久化是将程序数据在持久状态和瞬时状态间转换的机制。1 2. DBC就是一种持久化机制。文件IO也是一种持久化机制。2 3.
- paip.元数据驱动的转换-读取文件行到个list理念 uapi java php python总结
- json格式数据 ,将数据库中查询的结果转换为json(方式2)
- Android Studio JSON To Kotlin Class插件安装,它把Json自动转换Kotlin Class
- NLP:自然语言处理技术中常用的文本特征表示方法之字典特征抽取(对字典型数据通过特征抽取和向量化进而实现特征数字化,one-hot编码/仅有值稀疏矩阵,如对类别型特征转换数字型)代码实现
- CV之OD之YOLO:将yolo的.weights文件转换为tensorflow、keras等深度学习框架模型所需的.h5文件的图文教程(源代码来自YOLO)
- fastjson:Json和Java对象转换
- pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换
- Datatable转换为Json 然后,Json数据导入 js 档
- DataFrame 数据框与Numpy ndarray 的转换
- Jackson转换json大写_关于jackson转化json的原理_jackson序列化和反序列化Json
- 生存分析 合并三个数据集的结果 自建函数id转换 geo duqiang