2016-07-21 5 views
0

저는 Newton을 사용하여 객체 목록으로 비 직렬화하려는 json 문자열을 가지고 있습니다. 'System.Collections.Generic.ListC에서 newton으로 json 객체 목록을 비 직렬화합니다.

에게 유형으로의 형식을 :하지만 그것은

오류가 현재 JSON 객체 (예를 들어 { "값", "이름"}) 역 직렬화 할 수 없습니다 제공 json 문자열입니다.

[ { "key": "1", "value": "Package1" }, { "key": "some name", "value": "Package2" } ] 

모델은

public class RootObject 
{ 
    public string key { get; set; } 
    public string value { get; set; } 
} 

으로 정의 그리고 난 JSON 위에 나열된 문자열이고, 직렬화 복원하기 위해 다음과 같은 방법을 사용하고 있습니다.

var resultList = JsonConvert.DeserializeObject<List<RootObject>>(json); 

여기서 내가 잘못되어 가고 있는지 잘 모르겠다.

+7

Deserialize 메서드로 전달할 json 텍스트가 맞습니까? 그것은 나를 위해 완전히 잘 작동해야하기 때문입니다. 'json' 객체를 Console에 출력하여 여기에 붙여 넣을 수 있습니까? – user3185569

+3

따옴표를 벗어 났습니까? 'var \ jsonData = "[\"키 \ ": \"1 \ ", \"값 \ ": \"패키지 1 \ "}, \ ": \"Package2 \ "}]"; ' –

+4

바이올린에서 잘 작동하는 것 같습니다. https://dotnetfiddle.net/CvKGau – solidau

답변

1

목록 대신 IDictionary를 사용해보십시오.

관련 문제