C# 从元素中提取字段

C# 从元素中提取字段,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,我在一个取自RestSharp响应的XML文件中有以下信息,我只关心5个ID元素。我想将这些ID放入数组或列表中 如何提取它们 我迄今为止的努力 var root = XElement.Parse(response.Content); var number_projects_str = root.FirstAttribute.Value; int number_of_projects = -1; if (Int32.Tr

我在一个取自RestSharp响应的XML文件中有以下信息,我只关心5个ID元素。我想将这些ID放入数组或列表中

如何提取它们

我迄今为止的努力

 var root = XElement.Parse(response.Content);
            var number_projects_str = root.FirstAttribute.Value;
            int number_of_projects = -1;

            if (Int32.TryParse(number_projects_str, out number_of_projects))
            {
              //create an array of size number_of_projects
              //... 
            }
您可以使用扩展方法从每行中选择第一个单元格,该单元格包含ID:

var Ids = root.XPathSelectElements("/ResultSet/results/rows/row/cell[1]")
              .Select(o => (string)o)
              .ToArray();

这看起来不错,但是,我太喜欢C noob了,无法理解选择错误CS1061上的编译错误:“System.Collections.Generic.IEnumerable”不包含“Select”的定义,并且没有扩展方法“Select”接受类型为“System.Collections.Generic.IEnumerable”的第一个参数。是否缺少using指令或程序集引用?我尝试了以下用法:使用System.Xml.Linq;使用System.Xml.XPath;似乎.Select来自这里的System.Linq,那么您使用System.Linq了吗?谢谢,这解决了编译问题,但是上面的代码返回了一个空数组。ID应该包含5个字符串。我在对问题的编辑中添加了指向完整xml文件的链接。