[工具]json转类
摘要
这周在园子看到一篇介绍JsonCSharpClassGenerator这个工具的文章,感觉挺实用的,在现在项目中json用的是最多的,所以在转换对应的类的时候,确实挺频繁,所以就研究了一下这个工具,确实很好用。这里记录一下,以后也方便去查找。
JSON C# Class Generator
这是一个开源的项目,项目地址:JSON C# Class Generator
下载之后解压,如下图所示

支持将json转为下面三种语言

Namespace:生成的类的命名空间。
Main Class Name:类文件名称。
Target Folder:类文件保存位置。
Language:支持生成的语言。
Secondary Class:二级类。
Use nested Class:使用嵌套类。
Use the same namespace:使用相同的命名空间。
Use the different namespace:使用不同的命名空间。
Member generator:成员生成。
Properties:属性。
Fields:字段。
Visibility:访问限制。
Internal:内部类。
Public:公共类。
Convert to PascalCase:转换为pascalcase命名格式。
一个例子
有下面的一个班级的json字符串
{
"id": ,
"name": "信管3班",
"students": [
{
"id": ,
"name": "wolfy1"
},
{
"id": ,
"name": "wolfy1"
},
{
"id": ,
"name": "wolfy1"
},
{
"id": ,
"name": "wolfy1"
},
{
"id": ,
"name": "wolfy1"
},
{
"id": ,
"name": "wolfy1"
}
]
}
班级中对应一个学生数组。大概猜测对应的类应该是这样的。
Class MyClass
{
public int id;
public string name;
public List<student> students;
}
我们验证一下

生成的类文件



确实很方便。里边使用Json.Ne的JsonProperty特性t为属性使用序列化时候的使用别名。跟原来的json字符串中的字段名称保持了一直。
[工具]json转类的更多相关文章
- Json与类对象转换
Json在js,jquery中可以直接使用,比如下串: { "from":"en" ,"to":"zh" ," ...
- [No00009A]JsonToObject json与类互转
using System.Web.Script.Serialization; /// <summary> /// 内部类,保存jsonData /// </summary> p ...
- 基于MVC4+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据
最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...
- 使用Json实体类构建菜单数据
基于MVC4+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据 最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框 ...
- 泛型集合、datatable常用数据类型转换Json帮助类
泛型集合.datatable常用数据类型转换Json帮助类 using System; using System.Data; using System.Configuration; using Sys ...
- C# 对象数据转换Json帮助类 JsonHelp
C# 对象数据转换Json帮助类 JsonHelp using System; using System.Data; using System.Configuration; using System. ...
- C# json帮助类,JsonHelper,Table转JSon,JSon转Table
/// <summary> /// json帮助类 /// </summary> public class JsonHelper { public JsonHelper() { ...
- 咏南中间件JSON序列类
咏南中间件JSON序列类 1)支持跨平台.跨语言 2)支持主从表数据序列.还原,支持任意数量的表 主从表数据序列为JSON字符串样式: { "rows": [ { "FD ...
- Json解析类
Json解析类 定义两个辅助类 public class JSONObject : Dictionary<string, object> { } public class JSONAr ...
随机推荐
- js-FCC算法Smallest Common Multiple。找出两个参数和它们之间的连续数字的最小公倍数。
存档. 找出能被两个给定参数和它们之间的连续数字整除的最小公倍数. function smallestCommons(arr) { //分解质因数法,分解为若干个质数相乘 var arrratio=[ ...
- 【BZOJ-2599】Race 点分治
2599: [IOI2011]Race Time Limit: 70 Sec Memory Limit: 128 MBSubmit: 2590 Solved: 769[Submit][Status ...
- Hadoop启动报Error: JAVA_HOME is not set and could not be found解决办法
Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found. 解决办法: 修改/etc/hadoop/hadoop-env.sh ...
- 【bzoj1018】 SHOI2008—堵塞的交通traffic
http://www.lydsy.com/JudgeOnline/problem.php?id=1018 (题目链接) 题意 一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一条道 ...
- django 快速搭建blog
如果本文看不懂的,去看的我视频吧!http://www.testpub.cn/ ------------------------------------------- Django 自称是“最适合开发 ...
- Node.js使用Mongoose包操作MongoDB数据库
1. 安装Mongoose npm install mongoose 2. 使用 2.1 创建连接 var mongoose = require('mongoose'); mongoose.conne ...
- windows下安装使用Composer记录
一直以来都是直接下载类库文件放到项目中使用 Composer是一个PHP依赖管理工具,有了它,就可以对依赖的包进行统一管理,而且在项目中可以实现自动加载 安装和使用composer 下载并且运行 Co ...
- C++ 之 const references
extraction from The C++ Programming Language 4th. ed., Section 7.7 References, Bjarne Stroustrup To ...
- [Android]ADB Server didn't ACK错误的解决方法
Eclipse中调试的时候报错 [2014-06-18 13:07:49 - DinnerBooker] The connection to adb is down, and a severe err ...
- CentOS terminal 安装 matlab(mode=silent)
1. 下载matlab for Unix 2014 ,需要crack文件 2. 挂载iso文件, mount -o loop,ro Mathworks.Matlab.R2014a.iso /media ...