/// 페이지가 로드될 때
///
///
/
protected void Page_Load(object sender, EventArgs e)
{
//비동기 요청 여부 결정
if (Request. QueryString[ "ajax"] == "1")
{
ProcessRequest()
}
}
///
/// 비동기 요청 처리
/// private void ProcessRequest()
{
Response.ContentType = "text/html"
string json = Request.Form["json"] ;
//DataTable 역직렬화
DataTable newdtb = Json2Dtb(json);
//DataTable을 JSON으로 직렬화
string back = Dtb2Json(newdtb)
Response.Write(back); 🎜>Response.End();
///
/// DataTable을 Json으로
/// param name="dtb">
///
private string Dtb2Json(DataTable dtb)
{
JavaScriptSerializer jss = new JavaScriptSerializer ();
ArrayList dic = new ArrayList();
foreach(dtb.Rows의 DataRow 행)
{
Dictionary
( ) ;
foreach(dtb.Columns의 DataColumn col)
{
drow.Add(col.ColumnName, row[col.ColumnName])
}
dic.Add(drow) ;
}
return jss.Serialize(dic);
///
/// Json을 DataTable로
/// 🎜>///
///
private DataTable Json2Dtb(string json)
{
JavaScriptSerializer jss = new JavaScriptSerializer();
ArrayList dic = jss.Deserialize(json);
DataTable dtb = new DataTable()
{
foreach (Dictionary drow in dic)
{
if (dtb.Columns.Count == 0)
{
foreach (drow의 문자열 키 . 키)
{
dtb.Columns.Add(key, drow[key].GetType())
}
}
DataRow row = dtb.NewRow(); foreach(drow.Keys의 문자열 키)
{
row[key] = drow[key]
}
dtb.Rows.Add(row)
}
}
return dtb;
}
다른 다운로드 파일이 첨부되어 있으니
json.zip
을 다운로드하세요.