【.NET开发福音】使用Visual Studio将JSON格式数据自动转化为对应的类
前言:
这段时间一直在做一个第三方平台的对接,对接第三方其实无非就是请求调用第三方的相关接口接收返回过来的相关参数。因此在这个过程中就会涉及大量的JSON响应参数或者请求参数转化为对应的实体类的情况,因为只有转化为对应的实体类我们才好进行相关的数据操作。那么问题来了,这样我们在遇到后很多JSON对象的情况下是不是要自己一个一个的去写对应类的属性那假如有二三十个那岂不是要疯了去,其实咱们强大的Visual Studio有一个强大的功能能够将JSON串自动转化为对应的类(真的是一个提高工作效率的好方法)。
一、首先进行Json格式化校验
http://www.bejson.com/ (推荐这个在线工具非常好用)

{
"metaData": {
"defaultLang": "zh-CN",
"name": "追逐时光者每日一秀",
"categoryIds": ["214342106997653504", "214343889333583872"],
"tagIds": ["215586040843403264", "212828639341903872"],
"residentAGApp": "101144753",
"sourceName": "追逐时光者出版社",
"sellingMode": 2,
"remarks": "你是最棒的",
"availableFrom": "2019-01-01T08:00:00Z",
"availableBefore": "2020-01-01T10:00:00Z",
"autoStatusChange": [{
"status": 0,
"changeTime": "string"
}],
"eduappUsed": true,
"eduappPurchased": true,
"devProductId": "1001",
"distNotifyUrl": "https://www.cnblogs.com/Can-daydayup/",
"validityUnit": 5,
"validityNum": 1,
"includeLessons": true,
"typeId": 1001,
"teachers": ["212828639341903872"],
"mediaType": 3,
"needDelivery": true
},
"countryCodes": ["CN", "SG"]
}
二、复制JSON串,前往Visual Studio找到编辑=》选择性粘贴=》将JSON粘贴为类:
注意:首先根据自己的需求创建一个对应实体空白类

三、JSON成功转化的实体类:
namespace Domain.Model
{
public class Rootobject
{
public Metadata metaData { get; set; }
public string[] countryCodes { get; set; }
} public class Metadata
{
public string defaultLang { get; set; }
public string name { get; set; }
public string[] categoryIds { get; set; }
public string[] tagIds { get; set; }
public string residentAGApp { get; set; }
public string sourceName { get; set; }
public int sellingMode { get; set; }
public string remarks { get; set; }
public DateTime availableFrom { get; set; }
public DateTime availableBefore { get; set; }
public Autostatuschange[] autoStatusChange { get; set; }
public bool eduappUsed { get; set; }
public bool eduappPurchased { get; set; }
public string devProductId { get; set; }
public string distNotifyUrl { get; set; }
public int validityUnit { get; set; }
public int validityNum { get; set; }
public bool includeLessons { get; set; }
public int typeId { get; set; }
public string[] teachers { get; set; }
public int mediaType { get; set; }
public bool needDelivery { get; set; }
} public class Autostatuschange
{
public int status { get; set; }
public string changeTime { get; set; }
}
}
【.NET开发福音】使用Visual Studio将JSON格式数据自动转化为对应的类的更多相关文章
- Flask接口返回JSON格式数据自动解析
一 自定义一个response类 from flask import Response, jsonify # 定义response返回类,自动解析json class JSONResponse(Res ...
- js中JSON格式数据的转化
JSON.parse(STRING) => OBJECT JSON.stringify(OBJECT) => STRING
- fastJson java后台转换json格式数据
什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...
- 学习时用的软件最新 开发环境为Visual Studio 2010,数据库为SQLServer2005,使用.net 4.0开发。 超市管理系统
一.源码特点 1.采用典型的三层架构进行开发.模板分离,支持生成静态 伪静态..购物车.登陆验证.div+css.js等技术二.功能介绍 1.本源码是一个超市在线购物商城源码,该网上商城是给超市便利店 ...
- Android读取JSON格式数据
Android读取JSON格式数据 1. 何为JSON? JSON,全称为JavaScript Object Notation,意为JavaScript对象表示法. JSON 是轻量级的文本数据交换格 ...
- Android创建JSON格式数据
Android创建JSON格式数据 作为上一篇博客的补充,简单那解说了一下Android创建JSON格式数据的小Demo. 1. 创建JSON格式数据 对于Android创建JSON格式数据.因为An ...
- iOS开发之JSON格式数据的生成与解析
本文将从四个方面对IOS开发中JSON格式数据的生成与解析进行讲解: 一.JSON是什么? 二.我们为什么要用JSON格式的数据? 三.如何生成JSON格式的数据? 四.如何解析JSON格式的数据? ...
- ios网络学习------6 json格式数据的请求处理
ios网络学习------6 json格式数据的请求处理 分类: IOS2014-06-30 20:33 471人阅读 评论(3) 收藏 举报 #import "MainViewContro ...
- ajax接收遍历处理json格式数据
ajax在前后端的交互中应用非常广泛,通过请求后台接口接收处理json格式数据展现在前端页面. 下面我们来简单用 ajax在本地做一个接收并处理json的小例子 首先我们要新建一个叫做data的jso ...
- 使用基于Android网络通信的OkHttp库实现Get和Post方式简单操作服务器JSON格式数据
目录 前言 1 Get方式和Post方式接口说明 2 OkHttp库简单介绍及环境配置 3 具体实现 前言 本文具体实现思路和大部分代码参考自<第一行代码>第2版,作者:郭霖:但是文中讲 ...
随机推荐
- Oracle存储函数写法及调用
1.右键导航创建函数界面 2.返回值FunctionResult可自定义,当函数有输出函数时可不传数据,但需要设置返回(当提示未限定返回长度时,如代码示例设置255长度皆可): -------使用函数 ...
- Writing your first Django app, part 1
Let's learn by example. Throughout this tutorial, we'll walk you through the creation of a basic pol ...
- 01-spfile和pfile的区别,生成,加载和修复
oracle数据库的配置文件指的是系统在启动到"nomount"阶段需要加载的文件,也叫做pfile或者spfile,但是其实pfile和spfile是不同的文件. 不同的数据库配 ...
- Gitlab Server
Gitlab 基本概述 1.什么是Gitlab ? Gitlab是一个开源分布式的版本控制系统. Ruby语言开发完成. Gitlab主要实现的功能.管理项目源代码.对源代码进行版本控制.以及代码复用 ...
- Keepalived高可用软件概述
Keepalived高可用软件概述: 1)互联网主要的高可用软件:Keepalived.Hearttbeat.其中Keepalived是轻量级的,Keepalived是一款开源.免费的实现网站.数据库 ...
- OI 学习笔记 I:图论(更新中)
阅读时建议在右下角开启目录. 由于作者的数学水平限制和篇幅限制,有些结论可能仅给出感性理解或不给出证明,有疑惑的读者可以百度答案或者前往参考资料一栏查找. 另外,因为图论的内容比较杂,有些与树相关的算 ...
- 51单片机控制w5500实现udp组播通信
51单片机控制w5500实现udp组播通信 在socket打开之前,向Sn_MR (Socket n 模式寄存器)寄存中写入 0x82(1000 0010),将W5500加入组播组 对Sn_DIPR ...
- APP攻防--安卓逆向&JEB动态调试&LSPosed模块&算法提取&Hook技术
JEB环境配置 安装java环境变量(最好jdk11) 安装adb环境变量 设置adb环境变量最好以Android命名 启动开发者模式 设置-->关于平板电脑-->版本号(单机五次) 开启 ...
- 大白话说Python+Flask入门(三)
写在前面 今天状态很不好,我发现学这部分知识的时候,会出现溜号或者注意力无法集中的情况. 我能想到的是,大概率是这部分知识,应该是超出了我现在的水平了,也就是说我存在知识断层了,整体感觉真的是一知半解 ...
- Docker安装与教程-Centos7(一)
复现漏洞时,经常要复现环境,VMware还原太过麻烦,所以学习docker的基本操作也是必要的 Docker三要素-镜像.容器.仓库 操作系统:Centos7 官方教程文档 1.Docker的安装与卸 ...