zoukankan      html  css  js  c++  java
  • json 绑定

    http://www.csaspx.com/articlelist-952.html

    ///
        /// 根据DataTable生成Json树结构
        ///
        ///数据源
        ///ID列
        ///Text列
        ///关系字段
        ///父ID
        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();
            }
        }

    调用方法很简单,运行这个void 类型的函数,然后取result 的值就行了,

    GetTreeJsonByTable(datatable, "id", "title", "pid", "0");
    string content = result.ToString();

    干货啊 。好东西啊 。

  • 相关阅读:
    UML与ER图
    动态规划法求背包问题
    回溯法求解n皇后和迷宫问题
    优先队列和二叉堆
    快排,归并和Shell排序
    关系型数据库设计范式
    Python使用Redis数据库
    Python urllib简单使用
    当SQL UPDATE遇到EXISTS(SELECT ...)时
    关于使用mybatis的一个惨痛教训
  • 原文地址:https://www.cnblogs.com/yemaxu/p/4160183.html
Copyright © 2011-2022 走看看