JsonHelper
作者:互联网
Json对于一个开发者来说已经不陌生了,首先肯定要引用Newtonsoft.Json,对于开发者可以在NuGet包里面下载
也可以在下面链接下载
链接:https://pan.baidu.com/s/1yH5Yp2c9f73Bkx5bLiiiNQ
提取码:xi64
JsonHelper
using Newtonsoft.Json; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Web.Script.Serialization; namespace Common { public class JsonHelper { /// <summary> /// 实体转json /// </summary> /// <typeparam name="T">实体</typeparam> /// <param name="x">实体</param> /// <returns></returns> public static string EntityToJson<T>(T x) { string result = ""; try { result = JsonConvert.SerializeObject(x); } catch { result = ""; } return result; } /// <summary> /// 实体集合List转json /// </summary> /// <typeparam name="T">实体</typeparam> /// <param name="x">实体</param> /// <returns></returns> public static string EntityListToJson<T>(List<T> x) { string result = ""; try { result = JsonConvert.SerializeObject(x); } catch { result = ""; } return result; } /// <summary> /// 实体集合list转json_null /// </summary> /// <typeparam name="T">实体</typeparam> /// <param name="x">实体</param> /// <returns></returns> public static string EntityListToJson_null<T>(List<T> x) { string result = ""; try { var jSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }; result = JsonConvert.SerializeObject(x, Formatting.Indented, jSetting); } catch { result = ""; } return result; } /// <summary> /// json转实体 /// </summary> /// <typeparam name="T">实体</typeparam> /// <param name="json">json</param> /// <returns></returns> public static T JsonToEntity<T>(string json) { T t = default(T); try { t = (T)JsonConvert.DeserializeObject(json, typeof(T)); } catch { t = default(T); } return t; } /// <summary> /// json list转集合List实体 /// </summary> /// <typeparam name="T">实体</typeparam> /// <param name="json">json</param> /// <returns></returns> public static List<T> JsonToListEntity<T>(string json) { List<T> list = null; try { list = (List<T>)JsonConvert.DeserializeObject(json, typeof(List<T>)); } catch { list = null; } return list; } #region 将json转换为DataTable /// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson">得到的json</param> /// <returns></returns> public static DataTable JsonToDataTable(string json) { JavaScriptSerializer jss = new JavaScriptSerializer(); ArrayList dic = jss.Deserialize<ArrayList>(json); DataTable dtb = new DataTable(); if (dic.Count > 0) { foreach (Dictionary<string, object> drow in dic) { if (dtb.Columns.Count == 0) { foreach (string key in drow.Keys) { try { dtb.Columns.Add(key, drow[key].GetType()); } catch (Exception) { string a=""; dtb.Columns.Add(key, a.GetType()); } } } DataRow row = dtb.NewRow(); foreach (string key in drow.Keys) { row[key] = drow[key]; } dtb.Rows.Add(row); } } return dtb; } #endregion #region 将DataTable转换为json public static string DataTableToJsonWithJsonNet(DataTable table) { string JsonString = string.Empty; JsonString = JsonConvert.SerializeObject(table); return JsonString; } public static T JsonToEntity<T>(object reqMessageBody) { throw new NotImplementedException(); } #endregion } }
有疑问请咨询https://wpa.qq.com/msgrd?v=3&uin=2861510776&site=qq&menu=yes
标签:string,JsonHelper,List,json,static,result,public 来源: https://www.cnblogs.com/loushengjie/p/11102553.html