[工具]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 ...
随机推荐
- matplotlib 柱状图、饼图;直方图、盒图
#-*- coding: utf-8 -*- import matplotlib.pyplot as plt import numpy as np import matplotlib as mpl m ...
- 【BZOJ-2438】杀人游戏 Tarjan + 缩点 + 概率
2438: [中山市选2011]杀人游戏 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1638 Solved: 433[Submit][Statu ...
- 【BZOJ-1864】三色二叉树 树形DP
1864: [Zjoi2006]三色二叉树 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 659 Solved: 469[Submit][Status] ...
- 【codevs1170】 双栈排序
http://codevs.cn/problem/1170/ (题目链接) 题意 给出一个初始序列,判断能否通过两个栈的入栈和出栈操作构造出一个有序序列.若可以,输出字典序最小的方案. Solutio ...
- C++11之thread线程
今天由于项目需求(其实是某门课的一个大作业,不好意思说出口啊...),想要使用多线程.相信大家一般用的是linux上的POSIX C或windows上的线程库,然而这些线程库以来于特定系统,并不“标准 ...
- Android——旋转屏幕导致Activity重建解决方法
Android开发文档上专门有一小节解释这个问题.简单来说,Activity是负责与用户交互的最主要机制,任何“设置”(Configuration)的改变都可能对Activity的界面造成影响,这时系 ...
- [资料搜集狂]D3.js数据可视化开发库
偶然看到一个强大的D3.js,存档之. D3.js 是近年来十分流行的一个数据可视化开发库. 采用BSD协议 源码:https://github.com/mbostock/d3 官网:http://d ...
- POJ 2492 A Bug's Life
传送门:A Bug's Life Description Background Professor Hopper is researching the sexual behavior of a rar ...
- BeautifulSoup高级应用 之 CSS selectors /CSS 选择器
BeautifulSoup支持最常用的CSS selectors,这是将字符串转化为Tag对象或者BeautifulSoup自身的.select()方法. 本篇所使用的html为: html_doc ...
- spring+hibernate ---laobai
biz包: package com.etc.biz; import java.util.List; import org.springframework.orm.hibernate3.support. ...