【发布时间】:2017-02-21 14:32:00
【问题描述】:
我从 Web API 收到以下 JSON,其中列出了在 POST 中发现的错误。 ModelState 中可能有多个键值对,具体取决于发现的错误数量。唯一的问题是值周围有方括号。因此,当我使用 JSON.net 反序列化时,会出现 Unexpected token 错误。
我现在的解决方案是搜索和替换这些括号,然后反序列化,这确实有效。但是有更好的解决方案吗?
我的班级
public class Error
{
public string Message { get; set; }
public Dictionary<string, string> ModelState { get; set; }
}
JSON
{
"Message": "The request is invalid.",
"ModelState": {
"member.Gender": ["An error has occurred."],
"member.MemberID": ["The MemberID field is required."],
"member.BoardMemberID": ["The BoardMemberID field is required."],
}
}
我现在如何反序列化
Error error = JsonConvert.DeserializeObject<Error>(jsonString.Replace("[", "").Replace("]", ""));
【问题讨论】:
标签: c# asp.net .net json json.net