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);
    }
}



댓글 없음:

댓글 쓰기

javascript - SQL 예약어 제거

  <script language="javascript"> //특수문자, 특정문자열(sql예약어) 제거 function checkSearchedWord(obj){ obj.value = obj.value+&quo...