【发布时间】:2015-09-08 19:51:05
【问题描述】:
我正在尝试解析一些 JSON,但遇到了问题。我正在尝试获取项目的名称。 JSON:http://steamcommunity.com/id/xejuicy/inventory/json/730/2/
我试过的代码:
WebClient wc = new WebClient();
string theItems = wc.DownloadString(string.Format("http://steamcommunity.com/profiles/{0}/inventory/json/730/2/", steamUser.SteamID.ConvertToUInt64()));
dynamic dynObj = JsonConvert.DeserializeObject(theItems);
Console.WriteLine("{0}", dynObj.rgDescriptions,dynObj);
foreach (var name in dynObj)
{
foreach (var subname in name)
{
Console.WriteLine("{0}", subname.name);
}
}
如果您熟悉 CS:GO,我想从 Steam 中获取所有 CS:GO 物品(甚至是板条箱),以及我在库存中的该游戏中的所有物品并获得它的名字。
错误:JValue 不包含名称的定义。 出现位置:第二个 foreach (Console.WriteLine("{0}", subname.name);)
这不是重复的,因为我成功反序列化 JSON 并且可以获取值但无法获取子值...虽然问题已经回答了。
【问题讨论】:
-
需要添加更多信息。比如,错误是什么?什么时候发生?
-
第一个
Console.WriteLine调用在格式字符串中只有一个参数,但是得到了2个参数... -
这不是问题。不过谢谢。