Iva*_*lko 4 c# linq json json.net windows-phone-7
我尝试通过JSON.NET解析JSON,并且在App类中可以,但是如果我想在自定义类中编写解析方法,VS ToList()在JEnumerable<JToken>对象中看不到该方法。
清单:
JObject newsResponse = JObject.Parse(e.Result);
IList<JToken> results = newsResponse["NewsResponse"]["NewsItems"]["NewsItem"].Children().ToList(); //Here don't see ToList()
List<News> newsResults = new List<News>();
foreach (JToken result in results)
{
News searchResult = JsonConvert.DeserializeObject<News>(result.ToString());
newsResults.Add(searchResult);
}
Run Code Online (Sandbox Code Playgroud)
错误:
'Newtonsoft.Json.Linq.JEnumerable'不包含'ToList'的定义,也找不到扩展方法'ToList'接受类型为'Newtonsoft.Json.Linq.JEnumerable'的第一个参数(您是否缺少using指令?或装配参考?)
您不需要在ToList()这里使用。
var results = newsResponse["NewsResponse"]["NewsItems"]["NewsItem"].Children();
Run Code Online (Sandbox Code Playgroud)
这将产生一个可枚举的(惰性)集合,可与您的foreach以下对象一起使用。
注意:我正在使用var,因为我不知道这里返回的确切类型,但是我们并不真正在意它,它可能非常复杂,因此非常有用。