使用linq查询xml

本文关键字:xml 查询 linq 使用 | 更新日期: 2023-09-27 17:57:46

我试图用linq从xml中查询一些信息,但我遇到了这样的错误-是的,我已经定义了-使用System.linq你能告诉我哪里有问题吗?感谢

错误1找不到查询模式的实现对于源类型"urn.P.IEEE.第1671项第2项第2008项第02项仪器描述仪器描述"。未找到"Select"。D: ''文件和设置''e539951''my documents''visual演播室2010''Projects''WindowsFormsApplication1''WindowsFormsAapplications1''Form1.cs 28 36 WindowsFormsAapplication1

InstrumentDescription test = InstrumentDescription.Load(openFileDialog1.FileName);
 var query = from b in test
             select  new {  b.Identification };

使用linq查询xml

在您的代码中,test只代表文档的根元素,所以您不能在它上使用LINQ——它不是一个序列。

您应该做什么取决于XSD的外观。例如,如果根InstrumentDescription元素下可以有多个Identification元素,那么只需访问test.Identitication即可获得列表。

您处理的是InstrumentDescription而不是XDocument,因此可能需要确保InstrumentDescription类是IQueryable。

如果您真的想对XML执行Linq,则需要将其作为数据集加载,或者使用Linq2XML(using System.Xml.Linq)。

点击此处查看更多信息。http://msdn.microsoft.com/en-us/library/system.xml.linq.aspx