存储树形的数据表转为Json
2015-05-19 23:14
162 查看
![](http://images0.cnblogs.com/blog2015/733213/201505/192313087752420.jpg)
/// <summary> /// 根据DataTable生成Json树结构 /// </summary> /// <param name="tabel">数据源</param> /// <param name="idCol">ID列</param> /// <param name="txtCol">Text列</param> /// <param name="rela">关系字段</param> /// <param name="pId">父ID</param> StringBuilder result = new StringBuilder(); StringBuilder sb = new StringBuilder(); private void GetTreeJsonByTable(DataTable tabel, string idCol, string txtCol, string rela, object pId) { result.Append(sb.ToString()); sb.Clear(); if (tabel.Rows.Count > 0) { sb.Append("["); string filer = string.Format("{0}='{1}'", rela, pId); DataRow[] rows = tabel.Select(filer); if (rows.Length > 0) { foreach (DataRow row in rows) { sb.Append("{\"id\":\"" + row[idCol] + "\",\"text\":\"" + row[txtCol] + "\",\"state\":\"open\""); if (tabel.Select(string.Format("{0}='{1}'", rela, row[idCol])).Length > 0) { sb.Append(",\"children\":"); GetTreeJsonByTable(tabel, idCol, txtCol, rela, row[idCol]); result.Append(sb.ToString()); sb.Clear(); } result.Append(sb.ToString()); sb.Clear(); sb.Append("},"); } sb = sb.Remove(sb.Length - 1, 1); } sb.Append("]"); result.Append(sb.ToString()); sb.Clear(); } }
调用:
![](http://images0.cnblogs.com/blog2015/733213/201505/192314043699705.jpg)
相关文章推荐
- Json树形结构数据转Java对象并存储到数据库的实现-超简单的JSON复杂数据处理 .
- JSON复杂数据处理之Json树形结构数据转Java对象并存储到数据库的实现
- zTree联想终极篇-->将存储树形数据表封装成自定义TreeNode-->将自定义TreeNode解析成JSON树形字串
- 数据库存储为null时,自定义字符标识。使转为json数据后,列不丢失或有undefined。
- JSON和XML两种数据存储、交换格式的比较
- 分别采用深度和广度遍历数据库中邻接表中存储的树形结构的数据
- ajax提交form表单数据serialize转为JSON
- js中字符串数据转为json对象的方法
- json数据解析,json数据转为java对象
- 数据存储(无数据库版)之一:存储为JSON
- 关于mysql中数据存储复合树形结构,查询时结果按树形结构输出
- SQL图示树形数据表查询存储过程
- 利用json来存储数据
- 一种将数据表DataTable转为JSON格式的新方法
- H5本地存储详细使用教程(localStorage + JSON数据存储应用框架)
- C#根据指定url下载文件并读取.csv数据转为json格式
- 将后台的表格数据转为json传到前台
- OC语言--数据存储(归档&plist&Json)
- 用json方式存储数据
- [ mongoDB ] - 文档型数据库设计模式-如何存储树形数据 [转]