2011-02-17 6 views
0

JSON을 처음 사용했기 때문에 누군가가 도와 줄 수 있기를 바랍니다. webservice에서 JSON 문자열을받습니다. 나는 그것이 datatable에서 생성 된 이해합니다. C#에서이 데이터 집합을 deserialize로 관리하려면 어떻게해야합니까? 어쩌면 누군가가 나를 위해 뭔가를 가지고 있을지도 모른다.json.net을 C#의 문자열에서 datatable으로 사용하기

{ 
    "DataToJohnson": { 
    "0": { 
     "maat_id": "1", 
     "maat": "11" 
    }, 
    "1": { 
     "maat_id": "2", 
     "maat": "11+" 
    }, 
    "2": { 
     "maat_id": "3", 
     "maat": "12+" 
    }, 
    "3": { 
     "maat_id": "4", 
     "maat": "12/13" 
    } 
    } 
} 

고마워요!

레이몬드

당신이 JSON 데이터를 표현하는 모델을 정의 할 수 있습니다

답변

3

: 다음

public class Data 
{ 
    public int Maat_id { get; set; } 
    public string Maat { get; set; } 
} 

public class MyModel 
{ 
    public Dictionary<int, Data> DataToJohnson { get; set; } 
} 

하고 모델

var json = 
@"{ 
    ""DataToJohnson"": { 
    ""0"": { 
     ""maat_id"": ""1"", 
     ""maat"": ""11"" 
    }, 
    ""1"": { 
     ""maat_id"": ""2"", 
     ""maat"": ""11+"" 
    }, 
    ""2"": { 
     ""maat_id"": ""3"", 
     ""maat"": ""12+"" 
    }, 
    ""3"": { 
     ""maat_id"": ""4"", 
     ""maat"": ""12/13"" 
    } 
    } 
}"; 
MyModel model = JsonConvert.DeserializeObject<MyModel>(json); 
foreach (var item in model.DataToJohnson) 
{ 
    Console.WriteLine(
     "id: {0}, maat_id: {1}, maat: {2}", 
     item.Key, item.Value.Maat_id, item.Value.Maat 
    ); 
} 
+0

대린에이 문자열을 역 직렬화하는 Json.NET를 사용합니다, 나는 그것을 확인 그리고 그것은 작동합니다! 감사! – Raymond

관련 문제