asp.net将 DataTable 与 List 转成json输出

来源:互联网 发布:二分法查找c语言 编辑:程序博客网 时间:2024/04/29 21:07
/// <summary>        /// 将DataTable转换成 json        /// </summary>        /// <param name="jsonName"></param>        /// <param name="dt"></param>        /// <returns></returns>        public string DataTableToJson(string jsonName, DataTable dt)        {            StringBuilder Json = new StringBuilder();            Json.Append("{\"" + jsonName + "\":[");            if (dt.Rows.Count > 0)            {                for (int i = 0; i < dt.Rows.Count; i++)                {                    Json.Append("{");                    for (int j = 0; j < dt.Columns.Count; j++)                    {                        Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":\"" + dt.Rows[i][j].ToString() + "\"");                        if (j < dt.Columns.Count - 1)                        {                            Json.Append(",");                        }                    }                    Json.Append("}");                    if (i < dt.Rows.Count - 1)                    {                        Json.Append(",");                    }                }            }            Json.Append("]}");            return Json.ToString();        }        //List转成json        public static string ObjectToJson<T>(string jsonName, IList<T> IL)        {            StringBuilder Json = new StringBuilder();            Json.Append("{\"" + jsonName + "\":[");            if (IL.Count > 0)            {                for (int i = 0; i < IL.Count; i++)                {                    T obj = Activator.CreateInstance<T>();                    Type type = obj.GetType();                    PropertyInfo[] pis = type.GetProperties();                    Json.Append("{");                    for (int j = 0; j < pis.Length; j++)                    {                        Json.Append("\"" + pis[j].Name.ToString() + "\":\"" + pis[j].GetValue(IL[i], null) + "\"");                        if (j < pis.Length - 1)                        {                            Json.Append(",");                        }                    }                    Json.Append("}");                    if (i < IL.Count - 1)                    {                        Json.Append(",");                    }                }            }            Json.Append("]}");            return Json.ToString();        }


	
				
		
原创粉丝点击