zoukankan      html  css  js  c++  java
  • DataTable 数据表转成JSON

    第一个发送到前台要eval一下.转换成JS的数组

    第二个转换成真正的JSON数据


         /// <summary> 
        
    /// 将一个数据表转换成一个JSON字符串,在客户端可以直接转换成二维数组。 
        
    /// </summary> 
        
    /// <param name="source">需要转换的表。</param> 
        
    /// <returns></returns> 
        public static string DataTableToJson(DataTable source) 
        { 
            
    if (source.Rows.Count == 0
                
    return ""
            StringBuilder sb 
    = new StringBuilder("["); 
            
    foreach (DataRow row in source.Rows) 
            { 
                sb.Append(
    "["); 
                
    for (int i = 0; i < source.Columns.Count; i++
                { 
                    sb.Append(
    '"' + row.ToString() + "\","); 
                } 
                sb.Remove(sb.Length 
    - 11); 
                sb.Append(
    "],"); 
            } 
            sb.Remove(sb.Length 
    - 11); 
            sb.Append(
    "]"); 
            
    return sb.ToString(); 
        }
        /// <summary> 
        
    /// 反回JSON数据到前台 
        
    /// </summary> 
        
    /// <param name="dt">数据表</param> 
        
    /// <returns>JSON字符串</returns> 
        public string CreateJsonParameters(DataTable dt) 
        { 
            StringBuilder JsonString 
    = new StringBuilder(); 
            
    //Exception Handling         
            if (dt != null && dt.Rows.Count > 0
            { 
                JsonString.Append(
    ""); 
                JsonString.Append(
    "\"TableInfo\":[ "); 
                
    for (int i = 0; i < dt.Rows.Count; i++
                { 
                    JsonString.Append(
    ""); 
                    
    for (int j = 0; j < dt.Columns.Count; j++
                    { 
                        
    if (j < dt.Columns.Count - 1
                        { 
                            JsonString.Append(
    "\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[j].ToString() + "\","); 
                        } 
                        
    else if (j == dt.Columns.Count - 1
                        { 
                            JsonString.Append(
    "\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[j].ToString() + "\""); 
                        } 
                    } 
                    
    /**/ 
                    
    /*end Of String*/ 
                    
    if (i == dt.Rows.Count - 1
                    { 
                        JsonString.Append(
    ""); 
                    } 
                    
    else 
                    { 
                        JsonString.Append(
    "}, "); 
                    } 
                } 
                JsonString.Append(
    "]}"); 
                
    return JsonString.ToString(); 
            } 
            
    else 
            { 
                
    return null
            } 
        }

     【转】http://www.cnblogs.com/liuju150/archive/2009/07/10/database-to-JSON.html

  • 相关阅读:
    POJ 1837 Balance 水题, DP 难度:0
    POJ 3126 Prime Path bfs, 水题 难度:0
    python学习笔记day01 练习题
    python学习笔记day01_08 循环语句while
    python学习笔记day01_07 流程控制语句
    python学习笔记day01_06 基础数据类型
    python学习笔记day01_05 运行py程序--常量,变量,注释
    python学习笔记day01_04 python分类
    python学习笔记-day01_02计算机基础
    PAT 甲级 1134 Vertex Cover
  • 原文地址:https://www.cnblogs.com/tonybinlj/p/1522282.html
Copyright © 2011-2022 走看看