|
- using Newtonsoft.Json;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Web.Script.Serialization;
- using System.Xml;
- using System.Xml.Serialization;
-
- namespace CnasSynchronousCommon
- {
- public class TransConvert
- {
- /// <summary>
- /// datatable传Json
- /// </summary>
- /// <param name="dt"></param>
- /// <returns></returns>
- // public static string DataTableToJSON(DataTable dt)
- //{
- // StringBuilder jsonBuilder = new StringBuilder();
- // jsonBuilder.Append("[");
- // for (int i = 0; i<dt.Rows.Count; i++)
- // {
- // jsonBuilder.Append("{");
- // for (int j = 0; j<dt.Columns.Count; j++)
- // {
- // jsonBuilder.Append("\"");
- // jsonBuilder.Append(dt.Columns[j].ColumnName);
- // jsonBuilder.Append("\":\"");
- // jsonBuilder.Append(dt.Rows[i][j].ToString());
- // jsonBuilder.Append("\",");
- // }
- // jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
- // jsonBuilder.Append("},");
- // }
- // jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
- // jsonBuilder.Append("]");
- // return jsonBuilder.ToString();
- // }
-
- #region DataTable与JSON的转换
- public static string DataTableToJSON(DataTable dt)
- {
- return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
- }
- public static DataTable JSONToDataTable(string strJson)
- {
- return Newtonsoft.Json.JsonConvert.DeserializeObject(strJson, typeof(DataTable)) as DataTable;
- }
- #endregion
-
- #region DataTable与XML的转换
- public static string DataTableToXML(DataTable dt) //返回stringbuilder类型
- {
- dt.TableName = "0";
- StringBuilder stb = new StringBuilder();
- XmlSerializer serializer = new XmlSerializer(typeof(DataTable));
- XmlWriter writer = XmlWriter.Create(stb);
- serializer.Serialize(writer, dt);
- writer.Close();
- return stb.ToString();
- }
-
- public static DataTable XMLToDataTable(string strXml) //返回datatable类型
- {
- StringReader sr = new StringReader(strXml);
- XmlTextReader xtr = new XmlTextReader(sr);
- DataTable dt = new DataTable();
- dt.ReadXml(xtr);
- sr.Close();
- xtr.Close();
- return dt;
- }
- #endregion
-
-
- /// <summary>
- /// List<DataRow>转Json
- /// </summary>
- /// <param name="lst"></param>
- /// <returns></returns>
- public static string ListToString(List<DataRow> lst)
- {
- return JsonConvert.SerializeObject(lst);
- }
-
- /// <summary>
- /// json传List<DataRow>
- /// </summary>
- /// <param name="strList"></param>
- /// <returns></returns>
- public static List<DataRow> StringToList(string strList)
- {
- return JsonConvert.DeserializeObject<List<DataRow>>(strList);
- }
- }
- }
|