我在這個問題上已經困了很長時間,所以我在這里問。我收到以下錯誤消息:"Newtonsoft.Json.JsonSerializationException: 'Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'XXX' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly."這是我的班級的樣子:public class SSN{ public IDictionary<string,string> ssns { get; set; }}下面是 json 格式:
2 回答

MMMHUHU
TA貢獻1834條經驗 獲得超8個贊
您的 JSON 包含鍵和 ssn 而不是鍵和值,因此字典將不起作用。您需要創建如下類:
class SSN
{
public string ssn {get;set;}
public string key {get;set;}
}
并將 json 反序列化為 SSN 對象的集合。

ITMISS
TA貢獻1871條經驗 獲得超8個贊
首先,您需要創建類對象來正確反序列化您的json,例如
class SampleClass
{
public string ssn { get; set; }
public string key { get; set; }
}
然后,您需要將json反序列化為,因為json是一種數組類型,這意味著它從左方括號開始,并以右方括號而不是大括號結尾。List<SampleClass>[]{}
List<SampleClass> sampleClasses = JsonConvert.DeserializeObject<List<SampleClass>>(json_string);
或
List<SampleClass> sampleClasses = JToken.Parse(json_string).ToObject<List<SampleClass>>();
- 2 回答
- 0 關注
- 151 瀏覽
添加回答
舉報
0/150
提交
取消