dataset数据转换成json的格式通用方法

来源:互联网 发布:桃谷绘里香推荐 知乎 编辑:程序博客网 时间:2024/04/30 05:39

 晚上写的把dataset数据转换成json的格式通用方法,支持多个table集
谢谢大家的支持

/// <summary>
        
/// 把dataset数据转换成json的格式
        
/// </summary>
        
/// <param name="ds">dataset数据集</param>
        
/// <returns>json格式的字符串</returns>

        public static string GetJsonByDataset(DataSet ds)
        
{
            
if (ds == null || ds.Tables.Count <= 0 || ds.Tables[0].Rows.Count <= 0)
            
{
                
//如果查询到的数据为空则返回标记ok:false
                return "{/"ok/":false}";
            }

            StringBuilder sb 
= new StringBuilder();
            sb.Append(
"{/"ok/":true,");
            
foreach (DataTable dt in ds.Tables)
            
{
                sb.Append(
string.Format("/"{0}/":[",dt.TableName));

                
foreach (DataRow dr in dt.Rows)
                
{
                    sb.Append(
"{");
                    
for (int i = 0; i < dr.Table.Columns.Count; i++)
                    
{
                        sb.AppendFormat(
"/"{0}/":/"{1}/",", dr.Table.Columns[i].ColumnName.Replace("/"""///"").Replace("/'""///'"), FieldTypeFilter.ObjToStr(dr[i]).Replace("/"""///"").Replace("/'""///'"));
                    }

                    sb.Remove(sb.ToString().LastIndexOf(
','), 1);
                    sb.Append(
"},");
                }


                sb.Remove(sb.ToString().LastIndexOf(
','), 1);
                sb.Append(
"],");
            }

            sb.Remove(sb.ToString().LastIndexOf(
','), 1);
            sb.Append(
"}");
            
return sb.ToString();
        }

相应的jQuery读取json方式

 $.getJSON("page.aspx",{process:'getinfo',idx:idx},function(json){
            
if(json.ok==true){
                $(
"#slGameType").val(json.Table[0].GameType);
                $(
"#txtSelectName").val(json.Table[0].SelectName);
                $(
"#txtmyName").val(json.Table1[0].myName);
                 $(
"#txtmyinfo").val(json.Table1[0].info);
           }

        }
);

 

原创粉丝点击