Pot*_*Box 1 c# linq-to-xml visual-studio-2010
我试图读取XML文件,但type of the expression in the select clause is incorrect. Type inference failed in the call to 'Select'由于以下查询而收到错误:
List<Data> dogs = (from q in doc.Descendants("dog")
where (string)q.Attribute("name") == dogName
select new Data
{
name = q.Attribute("name").Value,
breed = q.Element("breed").Value,
sex = q.Element("sex").Value
}.ToList<Data>);
Run Code Online (Sandbox Code Playgroud)
数据类:
public class Data
{
public string name { get; set; }
public string breed { get; set; }
public string sex { get; set; }
public List<string> dogs { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
问题在于你的右括号 - 你在ToList()调用结束时得到它,当你打算把它放在对象初始化器的末尾时.此外,您实际上并没有调用该方法 - 您只是指定一个方法组.最后,您可以让类型推断为您解决类型参数:
List<Data> dogs = (from q in doc.Descendants("dog")
where (string)q.Attribute("name") == dogName
select new Data
{
name = q.Attribute("name").Value,
breed = q.Element("breed").Value,
sex = q.Element("sex").Value
}).ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1077 次 |
| 最近记录: |