【发布时间】:2021-02-18 14:18:22
【问题描述】:
目前我正在使用 C# 从体育统计 API 访问特定端点
class GetPlayerData
{
public string retrievePlayerStats()
{
var URL = new UriBuilder("https://statsapi.web.nhl.com/api/v1/people/8471698/stats?stats=statsSingleSeason&season=20202021");
var client = new WebClient();
dynamic PlayerData = JObject.Parse(client.DownloadString(URL.ToString()));
string PlayerStats = PlayerData.stats.ToString();
return PlayerStats;
}
}
调用没有问题,返回以下链接格式的以下结果:
https://statsapi.web.nhl.com/api/v1/people/8471698/stats?stats=statsSingleSeason&season=20202021
我的问题是如何访问子数组“拆分”中的项目。我希望能够为球员恢复一个单一的统计数据,比如进球或冰上时间。如果我尝试下面的注释选项,我会收到一条错误消息,提示“无法对空引用执行运行时绑定”。我对 C# 相当陌生,因此希望答案很简单,并且非常感谢有关如何做到这一点的任何帮助(甚至完全是其他选项)。
public string retrievePlayerStats()
{
var URL = new UriBuilder("https://statsapi.web.nhl.com/api/v1/people/8471698/stats?stats=statsSingleSeason&season=20202021");
var client = new WebClient();
dynamic PlayerData = JObject.Parse(client.DownloadString(URL.ToString()));
string PlayerName = PlayerData.stats.ToString();
//string PlayerName = PlayerData.splits.ToString(); --null reference error
//string PlayerName = PlayerData.stats.splits.ToString(); --null reference error
return PlayerName;
}
谢谢!
【问题讨论】: