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

badatatable转成json_在C#中将DataTable转换为JSON

我们可以通过两种简单的方式完成任务,一种是使用Json.NET DLL,另一种是使用StringBuilder类。

使用Newtonsoft Json.NETstring JSONresult;JSONresult = JsonConvert.SerializeObject(dt);  Response.Write(JSONresult);

使用StringBuilderpublic string DataTableToJsonObj(DataTable dt){

DataSet ds = new DataSet();

ds.Merge(dt);

StringBuilder JsonString = new StringBuilder();

if (ds != null && ds.Tables[0].Rows.Count > 0)

{

JsonString.Append("[");

for (int i = 0; i 

{

JsonString.Append("{");

for (int j = 0; j 

{

if (j 

{

JsonString.Append("\"" + ds.Tables[0].Columns[j].ColumnName.ToString() + "\":" + "\"" + ds.Tables[0].Rows[i][j].ToString() + "\",");

}

else if (j == ds.Tables[0].Columns.Count - 1)

{

JsonString.Append("\"" + ds.Tables[0].Columns[j].ColumnName.ToString() + "\":" + "\"" + ds.Tables[0].Rows[i][j].ToString() + "\"");

}

}

if (i == ds.Tables[0].Rows.Count - 1)

{

JsonString.Append("}");

}

else

{

JsonString.Append("},");

}

}

JsonString.Append("]");

return JsonString.ToString();

}

else

{

return null;

}}

相关文章:

  • jdbc连接teradata仓库_teradata的jdbc连接,
  • i7台式电脑配置推荐_Lumion官方推荐电脑配置,我连青铜都不是...
  • ppt流程图字体太小_老板让你用PPT汇报工作?这5个实用小技巧让你的PPT锦上添花!...
  • cryptopp des加密文件_Crypto++入门学习笔记(DES、AES、RSA、SHA-256)
  • espritcam后处理教学_MsterCAM9.1常用后处理
  • sit是什么环境_springboot 多环境配置 yml文件版
  • g2 坐标轴从0开始_英雄联盟:号称准备选冠军皮肤的g2,为何惨遭暴打?
  • 十进制度分秒lisp函数_十进制度转换为度分秒
  • 测试用例优先级划分_如何为测试用例分级?
  • php 实现二叉树的最大深度_PHP 如何实现用户二叉树排序需求
  • jq设置checked是否选中_jquery判断checkbox是否选中及改变checkbox状态
  • vue 创建图片坐标点_vue项目中使用高德地图(根据坐标定位点)
  • activiti表字段_activiti数据库表结构剖析(五)
  • 跑带宽度多少合适_有多少人知道跑步机跑带宽度和长度多少合适?
  • mobiledevice什么意思_mobile device
  • 03Go 类型总结
  • 07.Android之多媒体问题
  • 230. Kth Smallest Element in a BST
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Bootstrap JS插件Alert源码分析
  • canvas 绘制双线技巧
  • codis proxy处理流程
  • C学习-枚举(九)
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • leetcode388. Longest Absolute File Path
  • Magento 1.x 中文订单打印乱码
  • react-native 安卓真机环境搭建
  • Vim Clutch | 面向脚踏板编程……
  • 分享自己折腾多时的一套 vue 组件 --we-vue
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 使用parted解决大于2T的磁盘分区
  • 手写双向链表LinkedList的几个常用功能
  • 智能网联汽车信息安全
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 移动端高清、多屏适配方案
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • !$boo在php中什么意思,php前戏
  • #微信小程序:微信小程序常见的配置传旨
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (十五)使用Nexus创建Maven私服
  • (译) 函数式 JS #1:简介
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)负载均衡,回话保持,cookie
  • (转)可以带来幸福的一本书
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .gitignore
  • .Net多线程总结
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • @ConfigurationProperties注解对数据的自动封装
  • @RestControllerAdvice异常统一处理类失效原因
  • [100天算法】-二叉树剪枝(day 48)