C# 将列表转换为通用列表
我正在尝试将json数据转换为通用列表C# 将列表转换为通用列表,c#,asp.net,generics,windows-phone-8,json.net,C#,Asp.net,Generics,Windows Phone 8,Json.net,我正在尝试将json数据转换为通用列表 string result = e.Result; JObject o = JObject.Parse(result); var results = o["Data"]; List<Data> _lst = results.ToList(); string result=e.result; JObject o=JObject.Parse(结果); var结果=o[“数据”]; List _lst=results.ToList(); 但是列表
string result = e.Result;
JObject o = JObject.Parse(result);
var results = o["Data"];
List<Data> _lst = results.ToList();
string result=e.result;
JObject o=JObject.Parse(结果);
var结果=o[“数据”];
List _lst=results.ToList();
但是列表转换显示错误
'System.Collections.Generic.IEnumerable<Newtonsoft.Json.Linq.JToken>' to 'System.Collections.Generic.List<PhoneApp2.Employee.CandidateManager.Data>'. An explicit conversion exists (are you missing a cast?)
“System.Collections.Generic.IEnumerable”到“System.Collections.Generic.List”。存在显式转换(是否缺少强制转换?)
您应该将JToken
转换为数据
:
Data CreateData(JToken token)
{
// some code for creating Data from token.
}
然后您可以使用它:
var _lst = results.Select(CreateData).ToList();
编辑
例如,您的数据
类如下所示:
class Data
{
public string Name { get; set; }
public int SomeValue {get; set; }
}
让token
具有SomeValue
和Name
键
您的CreateData
方法将
Data CreateData(JToken token)
{
return new Data
{
Name = token.Value<string>("Name"),
SomeValue = token.Value<int>("SomeValue")
}
}
Data-CreateData(JToken令牌)
{
返回新数据
{
Name=token.Value(“Name”),
SomeValue=token.Value(“SomeValue”)
}
}
您必须演示如何使用Select
从JToken
中获取数据
实例您还可以显示在结果中获得的json吗
当您有异常时,您能用示例说明show string吗