摘要

这周在园子看到一篇介绍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. matplotlib 柱状图、饼图;直方图、盒图

    #-*- coding: utf-8 -*- import matplotlib.pyplot as plt import numpy as np import matplotlib as mpl m ...

  2. 【BZOJ-2438】杀人游戏 Tarjan + 缩点 + 概率

    2438: [中山市选2011]杀人游戏 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1638  Solved: 433[Submit][Statu ...

  3. 【BZOJ-1864】三色二叉树 树形DP

    1864: [Zjoi2006]三色二叉树 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 659  Solved: 469[Submit][Status] ...

  4. 【codevs1170】 双栈排序

    http://codevs.cn/problem/1170/ (题目链接) 题意 给出一个初始序列,判断能否通过两个栈的入栈和出栈操作构造出一个有序序列.若可以,输出字典序最小的方案. Solutio ...

  5. C++11之thread线程

    今天由于项目需求(其实是某门课的一个大作业,不好意思说出口啊...),想要使用多线程.相信大家一般用的是linux上的POSIX C或windows上的线程库,然而这些线程库以来于特定系统,并不“标准 ...

  6. Android——旋转屏幕导致Activity重建解决方法

    Android开发文档上专门有一小节解释这个问题.简单来说,Activity是负责与用户交互的最主要机制,任何“设置”(Configuration)的改变都可能对Activity的界面造成影响,这时系 ...

  7. [资料搜集狂]D3.js数据可视化开发库

    偶然看到一个强大的D3.js,存档之. D3.js 是近年来十分流行的一个数据可视化开发库. 采用BSD协议 源码:https://github.com/mbostock/d3 官网:http://d ...

  8. POJ 2492 A Bug's Life

    传送门:A Bug's Life Description Background Professor Hopper is researching the sexual behavior of a rar ...

  9. BeautifulSoup高级应用 之 CSS selectors /CSS 选择器

    BeautifulSoup支持最常用的CSS selectors,这是将字符串转化为Tag对象或者BeautifulSoup自身的.select()方法. 本篇所使用的html为: html_doc ...

  10. spring+hibernate ---laobai

    biz包: package com.etc.biz; import java.util.List; import org.springframework.orm.hibernate3.support. ...