DataSet <-> Json 파일
최근 이슈가 되고 있는 Json(Javascript Object Notation)은 텍스트 타입의 데이터 처리 방식에 있어서 XML을 대체할 만한 또 다른 형태이다.
장점이라면 XML DOM 호출에 비해 처리 속도가 뛰어나며, Cross-site Domian에서도 사용이 가능하다.
현재 관리하고 있는 사이트를 좀 더 가볍게 하기 위해 기존 XML이나 DataSet의 형태를 Json으로 작업하기 위해 관련 자료를 찾아보던 중
Codeplex에서 소개하고 있는 Json.NET framework을 사용해 보았다...
public string Serialize(object value) JsonSerializer json = new JsonSerializer(); json.NullValueHandling = NullValueHandling.Ignore; json.ObjectCreationHandling = ObjectCreationHandling.Replace;
if (type == typeof(DataRow))
StringWriter sw = new StringWriter();
writer.QuoteChar = '"';
string output = sw.ToString();
return output; public object Deserialize(string jsonText, Type valueType)
json.NullValueHandling = NullValueHandling.Ignore;
StringReader sr = new StringReader(jsonText);
return result; |
위 두개의 Method는 테이터 타입의 정보를 Json 형태로 변환이 가능하다.
예로 DataSet의 데이터를 Json으로 변환해 보자..
public void SetJson() { string JsonFileNM = "Test_JsonFile.jsf"; string JsonString = string.Empty; DataSet ds = null;
ds = Test.GetData(...); JsonString = Serialize(ds); .... //*******************// // JsonFileNM로 파일 저장 // //*******************// ... }
public DataSet GetJson(Sstring jsonText) { DataSet ds = (DataSet)Deserialize(jsonText, typeof(DataSet))); return ds; } |
Json.NET framework의 특징은 다음과 같다.
-Flexible JSON serializer to convert .NET objects to JSON and back again
-LINQ to JSON for reading and writing JSON
-Writes indented, easy to read JSON
-Convert JSON to and from XML
-Supports Silverlight and Windows Phone
CodePlex에서 관련 소스를 download가 가능하다.
'PP > JSON' 카테고리의 다른 글
JSON 의 eval() 함수 사용의 문제 (0) | 2012.01.09 |
---|---|
JSON Text를 JSON Object로 변환하기 (0) | 2012.01.09 |
Json / JQuery (Ajax)/ Asp.net 3가지를 연동하여 데이터 가져오기 (0) | 2012.01.07 |
JSON 개요 및 예제 (0) | 2012.01.04 |
DATASET - > JSON (1) | 2012.01.04 |