【发布时间】:2013-12-25 12:58:48
【问题描述】:
我正在尝试在 C# 中填充一个列表,但值没有出现在数组中 - 尽管在我尝试使用数组索引设置变量之前它不会引发错误(因为它当然超出了范围) .
这是我在调试时看到的确切返回字符串strJSON。
strJSON "{\"id\":34379899,\"name\":\"Revelation22\",\"profileIconId\":547,\"summonerLevel\":30,\"revisionDate\":1387913628000}"
为什么列表(数组)没有填充?
这是 KeyValue.cs 的代码(老实说我还不知道为什么它需要另一个类)
namespace LoLSummoner
{
public class KeyValue
{
public int id {get; set;}
public string name {get; set;}
public int profileIconId {get; set;}
public int summonerLevel {get; set;}
public int revisionDate {get; set;}
}
}
这是 Summoner.svc.cs 的代码
namespace LoLSummoner
{
public class Summoner : ISummoner
{
public int GetSummonerID(string SummonerName)
{
int summonerId = 0;
WebClient client = new WebClient();
string strJSON = client.DownloadString("http://prod.api.pvp.net/api/lol/na/v1.2/summoner/by-name/" + SummonerName + "?api_key=xxxx");
JavaScriptSerializer js = new JavaScriptSerializer();
KeyValue[] arrJSON = js.Deserialize<List<KeyValue>>(strJSON).ToArray();
summonerId = Convert.ToInt32(arrJSON.GetValue(0));
return summonerId;
}
}
}
【问题讨论】: