datatable转json 方法1

使用Json.Net DLL (Newtonsoft)

这个方法中要添加Json.Net DLL引用,我们可以从Newtonsoft下载Json.Net DLL(也可以在我的资源中下载),再导入命名空间,代码如下:

using Newtonsoft.Json;//导入命名空间    PlanRecordManager pr = new PlanRecordManager();DataTable dt= pr.GetProcessForMobile(session);string aa=JsonConvert.SerializeObject(dt);//这里直接调用转json的方法return "{'errid':'0', 'errmsg':'','ProcessList':"+ aa + "}";

datatable转json 方法2

使用StringBuilder

这是Json样本数据: {"姓名 ":"张三", "年龄":"30"}。Json里用花括号保存对象,它可以包含多个名称/值对。
所以使用StringBuilder我们可以创建一个类似的Json字符串。
由于要使用StringBuilder类,我们首先需要导入System.Text命名空间,如下:

using using System.Text;
public string DataTableToJson(DataTable table)  {  var JsonString = new StringBuilder();  if (table.Rows.Count > 0)  {  JsonString.Append("[");  for (int i = 0; i < table.Rows.Count; i++)  {  JsonString.Append("{");  for (int j = 0; j < table.Columns.Count; j++)  {  if (j < table.Columns.Count - 1)  {  JsonString.Append("\"" + table.Columns[j].ColumnName.ToString()+ "\":" + "\"" + table.Rows[i][j].ToString() + "\",");  }  else if (j == table.Columns.Count - 1)  {  JsonString.Append("\"" + table.Columns[j].ColumnName.ToString()+ "\":" + "\"" + table.Rows[i][j].ToString() + "\"");  }  }  if (i == table.Rows.Count - 1)  {  JsonString.Append("}");  }  else  {  JsonString.Append("},");  }  }  JsonString.Append("]");  }  return JsonString.ToString();    }

Json 字符串 转换为 DataTable数据集合

public static DataTable ToDataTable(this string json){DataTable dataTable = new DataTable();  //实例化DataTable result;try{JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值ArrayList arrayList = javaScriptSerializer.Deserialize<ArrayList>(json);if (arrayList.Count > 0){foreach (Dictionary<string, object> dictionary in arrayList){if (dictionary.Keys.Count<string>() == 0){result = dataTable;return result;}if (dataTable.Columns.Count == 0){foreach (string current in dictionary.Keys){dataTable.Columns.Add(current, dictionary[current].GetType());}}DataRow dataRow = dataTable.NewRow();foreach (string current in dictionary.Keys){dataRow[current] = dictionary[current];}dataTable.Rows.Add(dataRow); //循环添加行到DataTable中}}}catch{}result = dataTable;return result;}

json转List<model>集合 (model类中必须要有json中的每一个属性)

using Newtonsoft.Json;
//想转换成什么类型DeserializeObject<>尖括号就放什么类型   如果只想转model直接DeserializeObject<model>(json字符串)就可以了
List<BChaoModel> model = JsonConvert.DeserializeObject<List<BChaoModel>>(aa);//aa是json,创建一个实体类,实体类中要包含json中的属性

动态序列化得到json中的属性值(不用创建model实体类)

var DynamicObject = JsonConvert.DeserializeObject<dynamic>(result);//不用创建实体类得到json中某个属性的值  result是json字符串string aa = DynamicObject.result;//用序列化出来的对象直接.属性名

C# Json、datatable、model互相转换相关推荐

  1. 将Model对象转换成json文本或者json二进制文件

    将Model对象转换成json文本或者json二进制文件 https://github.com/casatwy/AnyJson 注意:经过测试,不能够直接处理字典或者数组 主要源码的注释 AJTran ...

  2. HandyJSON:Swift语言JSON转Model工具库

    背景 JSON是移动端开发常用的应用层数据交换协议.最常见的场景便是,客户端向服务端发起网络请求,服务端返回JSON文本,然后客户端解析这个JSON文本,再把对应数据展现到页面上. 但在编程的时候,处 ...

  3. Codable实现json转Model,是时候干掉HandyJSON了!

    自从开始使用Swift做项目,一直都在使用HandyJSON,不可否认,HandyJSON在Swift4.0以前是个好东西,也尝试过其它json转mode的工具,最终发现还是HandyJSON最好用. ...

  4. swift 访问oracle,Swift实现JSON转Model - HandyJSON使用讲解

    很多时候,我们从服务端请求下的数据都是Json格式,我们需要拿这些数据显示到我们的UI界面. 因此,我们的做法基本都会先将json转为方便使用的数据模型,或者也可以直接转字典解决. 在OC中,我们有很 ...

  5. java 嵌套对象转xml_Gson对Java嵌套对象和JSON字符串之间的转换 | 学步园

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...

  6. SpringMVC关于json、xml自动转换的原理研究[附带源码分析 --转

    SpringMVC关于json.xml自动转换的原理研究[附带源码分析] 原文地址:http://www.cnblogs.com/fangjian0423/p/springMVC-xml-json-c ...

  7. json文件读取并转换成为字典python

    json文件读取并转换成为字典python # JSON到字典转化 f = open('info.json', 'r') info_data = json.load(f) print(info_dat ...

  8. android java json与实体互相转换工具

    推荐大家一个工具,能比较好的实现JSON与实体互相转换,支持数组等. 原帖是http://www.iteye.com/topic/484519,没有联系作者,就不直接转过来了. 大家可以去看一下. 下 ...

  9. 使用python开发json、csv数据格式转换工具

    使用python开发json.csv数据格式转换工具 json和xml是业界常用的数据格式,而游戏行业经常使用csv配表,包括本地化文本和数值.本文介绍csv和json序列化.逆序列化相关的pytho ...

  10. 数组和JSON之间的格式转换

    数组和JSON之间的格式转换 主要代码: const a = JSON.stringify(jsonStrings) //object转json const c = JSON.parse(a) //j ...

最新文章

  1. oracle可以面向对象吗,Jbdc助手-数据库操作面向对象的实现(oracle)
  2. Backtrack的安装配置
  3. 员工考勤信息管理小程序
  4. java json的使用,java中json的使用
  5. 【Android 安装包优化】资源混淆 ( 资源混淆效果 | APK 构建流程简介 | 资源 ID 组成 )
  6. JS - Class继承
  7. mysql get one_Ecshop 数据库操作方法getRow、getAll、getOne区别
  8. java.util.ConcurrentModificationException异常
  9. CV之 HOG特征描述算子-行人检测
  10. gdb调试时调用函数、设置观察点以及GDB的宏
  11. 算法复习周------“动态规划之‘图像压缩’”
  12. cad打开a3样板图形_CAD中怎样设置A3图纸模板
  13. Linux下的围棋软件,在Linux下和电脑下围棋
  14. Pcshare远控源码偏重分析(一)
  15. html中的bom和dom,BOM与DOM的区别
  16. 程序员必须要掌握哪些语言
  17. 手机拍的试卷打印出来是黑的一片怎么办
  18. 电脑的WiFi里面不显示可用的无线网络
  19. R语言数据处理——基础篇 data.frame基本操作
  20. 如何解决:“Avoid hardcoding the debug mode

热门文章

  1. 有史以来最容易理解的控制反转(IoC)与注入依赖(DI)
  2. 一篇文章让你拥有用不完的ip代理
  3. java1.7环境_java1.7环境变量设置
  4. winpcap java封装_利 用jnetpcap 封装libpcap
  5. numpy array和python list_Python list与NumPy array 区分详解
  6. python检查exe运行是否报错_python打包成exe格式后,在部分机子上没法运行
  7. php 支付宝支付回调与查询订单
  8. php phpexcel导入excel
  9. linux htop详细功能
  10. Python基础15_装饰器