当前位置: 首页 > news >正文

将DATAtable转换成 json格式

将DATAtable转换成 json格式:DataTableConvertJson.cs

public class DataTableConvertJson
{

#region dataTable转换成Json格式
/// <summary>
/// dataTable转换成Json格式
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
public static string DataTable2Json(DataTable dt)
{
StringBuilder jsonBuilder
= new StringBuilder();
jsonBuilder.Append(
"{\"");
jsonBuilder.Append(dt.TableName);
jsonBuilder.Append(
"\":[");
jsonBuilder.Append(
"[");
for (int i = 0; i < dt.Rows.Count; i++)
{
jsonBuilder.Append(
"{");
for (int j = 0; j < dt.Columns.Count; j++)
{
jsonBuilder.Append(
"\"");
jsonBuilder.Append(dt.Columns[j].ColumnName);
jsonBuilder.Append(
"\":\"");
jsonBuilder.Append(dt.Rows[i][j].ToString());
jsonBuilder.Append(
"\",");
}
jsonBuilder.Remove(jsonBuilder.Length
- 1, 1);
jsonBuilder.Append(
"},");
}
jsonBuilder.Remove(jsonBuilder.Length
- 1, 1);
jsonBuilder.Append(
"]");
jsonBuilder.Append(
"}");
return jsonBuilder.ToString();
}

#endregion dataTable转换成Json格式
#region DataSet转换成Json格式
/// <summary>
/// DataSet转换成Json格式
/// </summary>
/// <param name="ds">DataSet</param>
/// <returns></returns>
public static string Dataset2Json(DataSet ds)
{
StringBuilder json
= new StringBuilder();

foreach (DataTable dt in ds.Tables)
{
json.Append(
"{\"");
json.Append(dt.TableName);
json.Append(
"\":");
json.Append(DataTable2Json(dt));
json.Append(
"}");
}
return json.ToString();
}
#endregion

/// <summary>
/// Msdn
/// </summary>
/// <param name="jsonName"></param>
/// <param name="dt"></param>
/// <returns></returns>
public static string DataTableToJson(string jsonName, DataTable dt)
{
StringBuilder Json
= new StringBuilder();
Json.Append(
"{\"" + jsonName + "\":[");
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
Json.Append(
"{");
for (int j = 0; j < dt.Columns.Count; j++)
{
Json.Append(
"\"" + dt.Columns[j].ColumnName.ToString() + "\":\"" + dt.Rows[i][j].ToString() + "\"");
if (j < dt.Columns.Count - 1)
{
Json.Append(
",");
}
}
Json.Append(
"}");
if (i < dt.Rows.Count - 1)
{
Json.Append(
",");
}
}
}
Json.Append(
"]}");
return Json.ToString();
}
}

调用  json=  DataTableConvertJson.DataTableToJson("tble", tblDatas);

//Quotation_No 为tblDatas的一列
 alert(msg.tble[i].Quotation_No)


相关文章:

  • PHP之session相关实例教程与经典代码
  • HDU 3065 病毒侵袭持续中 (AC自动机)
  • HDU 1850 Being a Good Boy in Spring Festival (Nim博弈)
  • 20非常有用的Java程序片段(6-10)
  • BizTalk RosettaNet解决方案之Loopback
  • YAFFS2文件系统分析(转)
  • 如何设置Linux操作系统shell命令的默认语言
  • 基于HTML5的燃气3D培训仿真系统
  • Android 解决ScrollView嵌入ListView | GridView | ScrollView显示问题
  • 万能写入sql语句,并且防注入
  • 进程通信
  • Delphi控制Excel
  • Tigase XMPP Server源码部署
  • 在iphone越狱机器中使用Hook
  • 报错:具有键...的ViewData项属于类型...,但它必须属于类型IEnumerableSelectListItem...
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • CAP理论的例子讲解
  • Docker 笔记(2):Dockerfile
  • express如何解决request entity too large问题
  • JAVA 学习IO流
  • JavaScript设计模式之工厂模式
  • jQuery(一)
  • js学习笔记
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 对超线程几个不同角度的解释
  • 分类模型——Logistics Regression
  • 官方解决所有 npm 全局安装权限问题
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 日剧·日综资源集合(建议收藏)
  • 一文看透浏览器架构
  • 2017年360最后一道编程题
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​MySQL主从复制一致性检测
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #if 1...#endif
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • (09)Hive——CTE 公共表达式
  • (1)SpringCloud 整合Python
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (23)Linux的软硬连接
  • (C++17) std算法之执行策略 execution
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (十)T检验-第一部分
  • (四) 虚拟摄像头vivi体验
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (四)汇编语言——简单程序
  • (转载)Google Chrome调试JS
  • .dwp和.webpart的区别
  • .gitignore文件_Git:.gitignore
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .net 简单实现MD5
  • .net 微服务 服务保护 自动重试 Polly
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • .NetCore 如何动态路由