亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jsonHelper

發布時間:2020-08-21 17:08:45 來源:網絡 閱讀:212 作者:蓬萊仙羽 欄目:web開發
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI.WebControls; using System.Text; using System.Data; using System.Collections; using System.Reflection; using System.Text.RegularExpressions; using System.Web.UI.HtmlControls; using System.Web.Script.Serialization;   using CMDS.ORMappers; using System.IO;   namespace CMDS.Common {     /// <summary>     /// Json處理類 Devil20120412     /// </summary>     public static class JsonHelper     {        public static JavaScriptSerializer Serializer = new JavaScriptSerializer();           /// <summary>         /// List轉化為Json         /// </summary>         /// <param name="obj"></param>         /// <returns></returns>         public static string ListToJson(object obj)         {             return Serializer.Serialize(obj);         }               /// <summary>         /// Json轉換為List         /// </summary>         /// <param name="list"></param>         /// <param name="jsons"></param>         /// <returns></returns>         public static List<T> JsonToList<T>(string jsons)         {             return Serializer.Deserialize<List<T>>(jsons);         }           /// <summary>         /// Json轉換為Mode實體         /// </summary>         /// <param name="jsons"></param>         /// <returns></returns>         public static T JsonToModel<T>(string jsons)         {             return Serializer.Deserialize<T>(jsons);           }           ///// <summary>         ///// List轉成json          ///// </summary>         ///// <typeparam name="T"></typeparam>         ///// <param name="jsonName"></param>         ///// <param name="list"></param>         ///// <returns></returns>         //public static string ListToJson<T>(IList<T> list, string jsonName)         //{         //    StringBuilder Json = new StringBuilder();         //    if (string.IsNullOrEmpty(jsonName))         //        jsonName = list[0].GetType().Name;         //    Json.Append("{\"" + jsonName + "\":[");         //    if (list.Count > 0)         //    {         //        for (int i = 0; i < list.Count; i++)         //        {         //            T obj = Activator.CreateInstance<T>();         //            PropertyInfo[] pi = obj.GetType().GetProperties();         //            Json.Append("{");         //            for (int j = 0; j < pi.Length; j++)         //            {         //                Type type;         //                object o = pi[j].GetValue(list[i], null);         //                string v = string.Empty;         //                if (o != null)         //                {         //                    type = o.GetType();         //                    v = o.ToString();         //                }         //                else         //                {         //                    type = typeof(string);         //                }           //                Json.Append("\"" + pi[j].Name.ToString() + "\":" + StringFormat(v, type));           //                if (j < pi.Length - 1)         //                {         //                    Json.Append(",");         //                }         //            }         //            Json.Append("}");         //            if (i < list.Count - 1)         //            {         //                Json.Append(",");         //            }         //        }         //    }         //    Json.Append("]}");         //    return Json.ToString();         //}           /// <summary>          /// 將Json序列化的時間由/Date(1294499956278+0800)轉為字符串          /// </summary>          private static string ConvertJsonDateToDateString(Match m)         {             string result = string.Empty;             DateTime dt = new DateTime(1970, 1, 1);             dt = dt.AddMilliseconds(long.Parse(m.Groups[1].Value));             dt = dt.ToLocalTime();             result = dt.ToString("yyyy-MM-dd HH:mm:ss");             return result;         }           /// <summary>           /// 將時間字符串轉為Json時間          /// </summary>          private static string ConvertDateStringToJsonDate(Match m)         {             string result = string.Empty;             DateTime dt = DateTime.Parse(m.Groups[0].Value);             dt = dt.ToUniversalTime();             TimeSpan ts = dt - DateTime.Parse("1970-01-01");             result = string.Format("\\/Date({0}+0800)\\/", ts.TotalMilliseconds);             return result;         }           ///// <summary>         ///// List轉成json          ///// </summary>         ///// <typeparam name="T"></typeparam>         ///// <param name="list"></param>         ///// <returns></returns>         //public static string ListToJson<T>(IList<T> list)         //{           //    object obj = list[0];         //    return ListToJson<T>(list, obj.GetType().Name);         //}           /// <summary>          /// 對象轉換為Json字符串          /// </summary>          /// <param name="jsonObject">對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(object jsonObject)         {             try             {                 StringBuilder jsonString = new StringBuilder();                 jsonString.Append("{");                 PropertyInfo[] propertyInfo = jsonObject.GetType().GetProperties();                 for (int i = 0; i < propertyInfo.Length; i++)                 {                     object objectValue = propertyInfo[i].GetGetMethod().Invoke(jsonObject, null);                     if (objectValue == null)                     {                         continue;                     }                     StringBuilder value = new StringBuilder();                     if (objectValue is DateTime || objectValue is Guid || objectValue is TimeSpan)                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     else if (objectValue is string)                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     else if (objectValue is IEnumerable)                     {                         value.Append(ToJson((IEnumerable)objectValue));                     }                     else                     {                         value.Append("\"" + objectValue.ToString() + "\"");                     }                     jsonString.Append("\"" + propertyInfo[i].Name + "\":" + value + ","); ;                 }                 return jsonString.ToString().TrimEnd(',') + "}";             }             catch (Exception ex)             {                 throw ex;             }         }           /// <summary>          /// 對象集合轉換Json          /// </summary>          /// <param name="array">集合對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(IEnumerable array)         {             string jsonString = "[";             foreach (object item in array)             {                 jsonString += ToJson(item) + ",";             }             if (jsonString.Length > 1)             {                 // jsonString.Remove(jsonString.Length - 1, 1);                 jsonString = jsonString.TrimEnd(',');             }             else             {                 jsonString = "[]";             }             return jsonString + "]";         }           /// <summary>          /// 普通集合轉換Json          /// </summary>          /// <param name="array">集合對象</param>          /// <returns>Json字符串</returns>          public static string ToArrayString(IEnumerable array)         {             string jsonString = "[";             foreach (object item in array)             {                 jsonString = ToJson(item.ToString()) + ",";             }             jsonString.Remove(jsonString.Length - 1, jsonString.Length);             return jsonString + "]";         }           /// <summary>          /// Datatable轉換為Json          /// </summary>          /// <param name="table">Datatable對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataTable dt)         {             StringBuilder jsonString = new StringBuilder();             jsonString.Append("[");             DataRowCollection drc = dt.Rows;             for (int i = 0; i < drc.Count; i++)             {                 jsonString.Append("{");                 for (int j = 0; j < dt.Columns.Count; j++)                 {                     string strKey = dt.Columns[j].ColumnName;                     string strValue = drc[i][j].ToString();                     Type type = dt.Columns[j].DataType;                     jsonString.Append("\"" + strKey + "\":");                     strValue = StringFormat(strValue, type);                     if (j < dt.Columns.Count - 1)                     {                         jsonString.Append(strValue + ",");                     }                     else                     {                         jsonString.Append(strValue);                     }                 }                 jsonString.Append("},");             }             jsonString.Remove(jsonString.Length - 1, 1);             jsonString.Append("]");             if (jsonString.Length == 1)             {                 return "[]";             }             return jsonString.ToString();         }                   /// <summary>         /// DataTable轉成Json          /// </summary>         /// <param name="jsonName"></param>         /// <param name="dt"></param>         /// <returns></returns>         public static string ToJson(DataTable dt, string jsonName)         {             StringBuilder Json = new StringBuilder();             if (string.IsNullOrEmpty(jsonName))                 jsonName = dt.TableName;             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++)                     {                         Type type = dt.Rows[i][j].GetType();                         Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + StringFormat(dt.Rows[i][j] is DBNull ? string.Empty : dt.Rows[i][j].ToString(), type));                         if (j < dt.Columns.Count - 1)                         {                             Json.Append(",");                         }                     }                     Json.Append("}");                     if (i < dt.Rows.Count - 1)                     {                         Json.Append(",");                     }                 }             }             Json.Append("]}");             return Json.ToString();         }           /// <summary>          /// DataReader轉換為Json          /// </summary>          /// <param name="dataReader">DataReader對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(IDataReader dataReader)         {             try             {                 StringBuilder jsonString = new StringBuilder();                 jsonString.Append("[");                   while (dataReader.Read())                 {                     jsonString.Append("{");                     for (int i = 0; i < dataReader.FieldCount; i++)                     {                         Type type = dataReader.GetFieldType(i);                         string strKey = dataReader.GetName(i);                         string strValue = dataReader[i].ToString();                         jsonString.Append("\"" + strKey + "\":");                         strValue = StringFormat(strValue, type);                         if (i < dataReader.FieldCount - 1)                         {                             jsonString.Append(strValue + ",");                         }                         else                         {                             jsonString.Append(strValue);                         }                     }                     jsonString.Append("},");                 }                 if (!dataReader.IsClosed)                 {                     dataReader.Close();                 }                 jsonString.Remove(jsonString.Length - 1, 1);                 jsonString.Append("]");                 if (jsonString.Length == 1)                 {                     return "[]";                 }                 return jsonString.ToString();             }             catch (Exception ex)             {                 throw ex;             }         }           /// <summary>          /// DataSet轉換為Json          /// </summary>          /// <param name="dataSet">DataSet對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataSet dataSet)         {             return ToJson(dataSet, false);             //foreach (DataTable table in dataSet.Tables)             // {             //   jsonString +=ToJson(table) + ",";             // }             // jsonString = jsonString.TrimEnd(',');             // return jsonString + "}";         }         /// <summary>          /// DataSet轉換為Json          /// </summary>          /// <param name="dataSet">DataSet對象</param>          /// <returns>Json字符串</returns>          public static string ToJson(DataSet dataSet, bool isTableName)         {             string jsonString = "{";             foreach (DataTable table in dataSet.Tables)             {                 if (isTableName)                 {                     jsonString += "\"" + table.TableName + "\":" + ToJson(table) + ",";                 }                 else                 {                     jsonString += ToJson(table) + ",";                 }               }             jsonString = jsonString.TrimEnd(',');             return jsonString + "}";         }           /// <summary>         /// 過濾特殊字符         /// </summary>         /// <param name="s"></param>         /// <returns></returns>         public static string String2Json(String s)         {             StringBuilder sb = new StringBuilder();             for (int i = 0; i < s.Length; i++)             {                 char c = s.ToCharArray()[i];                 switch (c)                 {                     case '\"':                         sb.Append("\\\""); break;                     case '\\':                         sb.Append("\\\\"); break;                     case '/':                         sb.Append("\\/"); break;                     case '\b':                         sb.Append("\\b"); break;                     case '\f':                         sb.Append("\\f"); break;                     case '\n':                         sb.Append("\\n"); break;                     case '\r':                         sb.Append("\\r"); break;                     case '\t':                         sb.Append("\\t"); break;                     case '\v':                         sb.Append("\\v"); break;                     case '\0':                         sb.Append("\\0"); break;                     default:                         sb.Append(c); break;                 }             }             return sb.ToString();         }           /// <summary>         /// 格式化字符型、日期型、布爾型         /// </summary>         /// <param name="str"></param>         /// <param name="type"></param>         /// <returns></returns>         private static string StringFormat(string str, Type type)         {             if (type != typeof(string) && string.IsNullOrEmpty(str))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(string))             {                 str = String2Json(str);                 str = "\"" + str + "\"";             }             else if (type == typeof(DateTime))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(bool))             {                 str = str.ToLower();             }             else if (type == typeof(byte[]))             {                 str = "\"" + str + "\"";             }             else if (type == typeof(Guid))             {                 str = "\"" + str + "\"";             }             return str;         }             public static void RegistAjax(HtmlHead Header, Type type)         {             string assemblyName = type.FullName + "," + type.Assembly.FullName.Substring(0, type.Assembly.FullName.IndexOf(","));             if (type.Assembly.FullName.StartsWith("App_Code."))             {                 assemblyName = type.FullName + ",App_Code";             }             Literal l = new Literal();             l.Text = "\n<script type=\"text/javascript\" src=\"/ajaxpro/prototype.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/core.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/converter.ashx\"></script>\n"             + "<script type=\"text/javascript\" src=\"/ajaxpro/" + assemblyName + ".ashx\"></script>\n";             Header.Controls.Add(l);         }     } }


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

信阳市| 无为县| 兰坪| 碌曲县| 迁西县| 拜泉县| 巨野县| 郸城县| 瑞昌市| 桦甸市| 辛集市| 龙里县| 垫江县| 霍邱县| 大化| 新野县| 英吉沙县| 同德县| 海门市| 宁强县| 金山区| 枣阳市| 承德县| 连平县| 姚安县| 绥芬河市| 韶关市| 汉中市| 南投市| 子洲县| 资中县| 丘北县| 绥江县| 天等县| 郎溪县| 繁峙县| 山西省| 马公市| 麟游县| 宜丰县| 收藏|