【发布时间】:2015-12-17 06:28:52
【问题描述】:
我目前正在做一个项目,我向 Riot Games API 发出请求,解析 JSON,并用它做一些事情。我有请求工作,我知道我得到了有效的 JSON。我的问题是使用 JSON.Net 反序列化 JSON。
JSON 的结构如下:
{
"xarcies": {
"id": 31933985,
"name": "Farces",
"profileIconId": 588,
"revisionDate": 1450249383000,
"summonerLevel": 30
}
}
我想把这些数据加载到下面的类中
[JsonObject(MemberSerialization.OptIn)]
class Summoner
{
[JsonProperty("id")]
public long id {get;set;}
[JsonProperty("name")]
public string name { get; set; }
[JsonProperty("profileIconId")]
public int profileIconId { get; set; }
[JsonProperty("revisionDate")]
public long revisionDate { get; set; }
[JsonProperty("summonerLevel")]
public long summonerLevel { get; set; }
}
我遇到的问题是,因为我得到了一个包含我需要的信息的“xarcies”对象,所以我不确定如何设计一个可以接受 JSON 数据的类。我见过一些使用 RootObject 类来获取对象的示例,并且该类有一个所有对都放入的子类,但我似乎无法让它工作。每次我运行它时,对象的属性最终都是 NULL。
【问题讨论】:
-
"xarcies"是标准属性名称,还是特定召唤师的名称? -
farces 是特定召唤师的名字。每次返回 JSON 时,api 都会以这种方式吐出。
标签: c# json json.net riot-games-api