摘要

这周在园子看到一篇介绍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转类的更多相关文章

  1. Json与类对象转换

    Json在js,jquery中可以直接使用,比如下串: { "from":"en" ,"to":"zh" ," ...

  2. [No00009A]JsonToObject json与类互转

    using System.Web.Script.Serialization; /// <summary> /// 内部类,保存jsonData /// </summary> p ...

  3. 基于MVC4+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据

    最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...

  4. 使用Json实体类构建菜单数据

    基于MVC4+EasyUI的Web开发框架经验总结(3)- 使用Json实体类构建菜单数据 最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框 ...

  5. 泛型集合、datatable常用数据类型转换Json帮助类

    泛型集合.datatable常用数据类型转换Json帮助类 using System; using System.Data; using System.Configuration; using Sys ...

  6. C# 对象数据转换Json帮助类 JsonHelp

    C# 对象数据转换Json帮助类 JsonHelp using System; using System.Data; using System.Configuration; using System. ...

  7. C# json帮助类,JsonHelper,Table转JSon,JSon转Table

    /// <summary> /// json帮助类 /// </summary> public class JsonHelper { public JsonHelper() { ...

  8. 咏南中间件JSON序列类

    咏南中间件JSON序列类 1)支持跨平台.跨语言 2)支持主从表数据序列.还原,支持任意数量的表 主从表数据序列为JSON字符串样式: { "rows": [ { "FD ...

  9. Json解析类

      Json解析类 定义两个辅助类 public class JSONObject : Dictionary<string, object> { } public class JSONAr ...

随机推荐

  1. js-FCC算法Smallest Common Multiple。找出两个参数和它们之间的连续数字的最小公倍数。

    存档. 找出能被两个给定参数和它们之间的连续数字整除的最小公倍数. function smallestCommons(arr) { //分解质因数法,分解为若干个质数相乘 var arrratio=[ ...

  2. 【BZOJ-2599】Race 点分治

    2599: [IOI2011]Race Time Limit: 70 Sec  Memory Limit: 128 MBSubmit: 2590  Solved: 769[Submit][Status ...

  3. 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 ...

  4. 【bzoj1018】 SHOI2008—堵塞的交通traffic

    http://www.lydsy.com/JudgeOnline/problem.php?id=1018 (题目链接) 题意 一个2行C列的矩形网格,网格上的每个点代表一个城市,相邻的城市之间有一条道 ...

  5. django 快速搭建blog

    如果本文看不懂的,去看的我视频吧!http://www.testpub.cn/ ------------------------------------------- Django 自称是“最适合开发 ...

  6. Node.js使用Mongoose包操作MongoDB数据库

    1. 安装Mongoose npm install mongoose 2. 使用 2.1 创建连接 var mongoose = require('mongoose'); mongoose.conne ...

  7. windows下安装使用Composer记录

    一直以来都是直接下载类库文件放到项目中使用 Composer是一个PHP依赖管理工具,有了它,就可以对依赖的包进行统一管理,而且在项目中可以实现自动加载 安装和使用composer 下载并且运行 Co ...

  8. C++ 之 const references

    extraction from The C++ Programming Language 4th. ed., Section 7.7 References, Bjarne Stroustrup To ...

  9. [Android]ADB Server didn't ACK错误的解决方法

    Eclipse中调试的时候报错 [2014-06-18 13:07:49 - DinnerBooker] The connection to adb is down, and a severe err ...

  10. CentOS terminal 安装 matlab(mode=silent)

    1. 下载matlab for Unix 2014 ,需要crack文件 2. 挂载iso文件, mount -o loop,ro Mathworks.Matlab.R2014a.iso /media ...