【发布时间】:2010-03-31 18:15:02
【问题描述】:
我正在玩一点新的StackOverflow API。不幸的是,我的 JSON 有点弱,所以我需要一些帮助。
我正在尝试反序列化用户的这个 JSON:
{"user":{
"user_id": 1,
"user_type": "moderator",
"creation_date": 1217514151,
"display_name": "Jeff Atwood",
...
"accept_rate": 100
}}
放入我用JsonProperty 属性装饰的对象中:
[JsonObject(MemberSerialization.OptIn)]
public class User
{
[JsonProperty("user_id", Required = Required.Always)]
public virtual long UserId { get; set; }
[JsonProperty("display_name", Required = Required.Always)]
public virtual string Name { get; set; }
...
}
我得到以下异常:
Newtonsoft.Json.JsonSerializationException: 找不到所需的属性“user_id” 在 JSON 中。
这是因为 JSON 对象是一个数组吗?如果是这样,我如何将其反序列化为一个 User 对象?
提前致谢!
【问题讨论】:
-
这个 JSON 中有两个对象。外部对象有一个属性
user,其中包含实际的用户对象。您是否在代码中考虑到这一点?我在这里也没有看到任何 JSON 数组。
标签: c# .net json serialization json.net