温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

asp.net中的Json字符串怎么利用DataTable进行构造

发布时间:2021-01-04 15:50:24 来源:亿速云 阅读:179 作者:Leah 栏目:开发技术

asp.net中的Json字符串怎么利用DataTable进行构造?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

具体如下:

/// <summary>
/// 将datatable转换为json
/// </summary>
/// <param name="dtb"></param>
/// <returns></returns>
private string Dtb2Json(DataTable dtb) {
  JavaScriptSerializer jss = new JavaScriptSerializer();
  System.Collections.ArrayList dic = new System.Collections.ArrayList();
  foreach (DataRow dr in dtb.Rows)
  {
   System.Collections.Generic.Dictionary<string, object> drow = new System.Collections.Generic.Dictionary<string, object>();
   foreach (DataColumn dc in dtb.Columns)
   {
    drow.Add(dc.ColumnName, dr[dc.ColumnName]);
   }
   dic.Add(drow);
  }
  //序列化
  return jss.Serialize(dic);
} /// <summary>
/// 构建JSON字符串
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
public static string CreateJsonParameters(DataTable dt)
{
 System.Text.StringBuilder sb = new System.Text.StringBuilder();
 if (dt != null && dt.Rows.Count > 0)
 {
  sb.Append("[");
  for (int i = 0; i < dt.Rows.Count; i++)
  {
   sb.Append("{");
   for (int j = 0; j < dt.Columns.Count; j++)
   {
    //如果值不是最后一个则添加逗号分隔
    if (j < dt.Columns.Count - 1)
    {
     sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/",");
    }
     //如果值为最后个字符则不添加逗号
    else if (j == dt.Columns.Count - 1)
    {
     sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/"");
    }
   }
   //如果为最后一个值的话 则不添加逗号
   if (i == dt.Rows.Count - 1)
   {
    sb.Append("}");
   }
   else
   {
    sb.Append("},");
   }
  }
  sb.Append("]");
  return sb.ToString();
 }
 else { return null; }
}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI