2019년 3월 19일 화요일
C# - DataTable To JSON
[#1]
using System.Web.Script.Serialization;
public string DataTableToJSONWithJavaScriptSerializer(DataTable table)
{
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
List < Dictionary < string, object >> parentRow = new List < Dictionary < string, object >> ();
Dictionary < string, object > childRow;
foreach(DataRow row in table.Rows)
{
childRow = new Dictionary < string, object > ();
foreach(DataColumn col in table.Columns)
{
childRow.Add(col.ColumnName, row[col]);
}
parentRow.Add(childRow);
}
return jsSerializer.Serialize(parentRow);
}
[#2]
using Newtonsoft.Json;
string json = JsonConvert.SerializeObject(dataSet, Formatting.Indented);
[#3]
public JsonResult GetRestUserFav() {
return Json(dt, JsonRequestBehavior.AllowGet);
}
[#4]
using System.Collections.Generic;
using System.Data;
public static class CommonExtensions
{
public static string ToJson(this DataTable value)
{
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
serializer.MaxJsonLength = 2147483647;
List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>();
Dictionary<string, object> row;
foreach (DataRow dr in value.Rows)
{
row = new Dictionary<string, object>();
foreach (DataColumn col in value.Columns)
{
row.Add(col.ColumnName, dr[col]);
}
rows.Add(row);
}
return serializer.Serialize(rows);
}
public static string ToJson(this DataSet value)
{
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
serializer.MaxJsonLength = 2147483647;
Dictionary<string, List<Dictionary<string, object>>> dsList = new Dictionary<string, List<Dictionary<string, object>>>();
List<Dictionary<string, object>> rows;
Dictionary<string, object> row;
foreach (DataTable dt in value.Tables)
{
rows = new List<Dictionary<string, object>>();
foreach (DataRow dr in dt.Rows)
{
row = new Dictionary<string, object>();
foreach (DataColumn col in dt.Columns)
{
row.Add(col.ColumnName, dr[col]);
}
rows.Add(row);
}
dsList.Add(dt.TableName, rows);
}
return serializer.Serialize(dsList);
}
}
피드 구독하기:
댓글 (Atom)
MSSQL - Cursor vs Temp Table
#테이블 변수사용의 예 use pubs go declare @tmptable table ( nid int identity(1,1) not null, title varchar (80) not null ) -- 테이블 변수 선언 inse...
-
11 SQL Client for Productive Database Administration & Development Working as a web developer or database administrator, often n...
-
[JSON Serialization] JSON Serialization The JSON Serialization feature converts objects to and from JSON format. This can be use...
댓글 없음:
댓글 쓰기