Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 这个LINQ查询出了什么问题_C#_Linq_Xpath_.net 3.5_Linq To Xml - Fatal编程技术网

C# 这个LINQ查询出了什么问题

C# 这个LINQ查询出了什么问题,c#,linq,xpath,.net-3.5,linq-to-xml,C#,Linq,Xpath,.net 3.5,Linq To Xml,我有以下XML <School Version="30"> <Math> <Lesson1 Type="Active">Introduction</Reset_mode> <Lesson2 Type="Active">Fundamentals</Reset_mode> </Math> </School> 它会引发错误 我还可以将XPa

我有以下XML

<School Version="30">
    <Math>
        <Lesson1 Type="Active">Introduction</Reset_mode>
        <Lesson2 Type="Active">Fundamentals</Reset_mode>         
    </Math>
</School>
它会引发错误

我还可以将XPath与XDocument一起使用吗?

您正在查找ShortcutList元素:

Element("ShortcutList")
这是不存在的

您应该写下以下内容以获得转租:

var items = document.Element("School").Element("Math").Elements();

foreach(var item in items)
{
    DoSomething(item);
}
您正在查找ShortcutList元素:

Element("ShortcutList")
这是不存在的

您应该写下以下内容以获得转租:

var items = document.Element("School").Element("Math").Elements();

foreach(var item in items)
{
    DoSomething(item);
}
LINQ到XML:

 from subject in XDocument.Load(xml).Element("School").Elemens()
 where subject.Name == "Math"
 select subject.Elements();
使用XmlDocument的XPath:

var doc = new XmlDocument();
doc.LoadXml(xml);
var nodes = doc.SelectNodes("School/Math/Lesson1 or School/Math/Lesson2");
LINQ到XML:

 from subject in XDocument.Load(xml).Element("School").Elemens()
 where subject.Name == "Math"
 select subject.Elements();
使用XmlDocument的XPath:

var doc = new XmlDocument();
doc.LoadXml(xml);
var nodes = doc.SelectNodes("School/Math/Lesson1 or School/Math/Lesson2");
生成包含两个元素的IEnumerable。 它等于xpath//Math

生成包含两个元素的IEnumerable。
它与此命名空间System.Xml.xpath中XElement/XDocument上使用的xpath//Math

xpath大小写相同

这是您对路径的查询

var nodes=来自document.XPathSelectElements中的C。/Math
选择C//shortcutsXMLDocument.SelectNodesQuery

此命名空间System.Xml.Xpath中的XElement/XDocument上使用的Xpath大小写

这是您对路径的查询

var nodes=来自document.XPathSelectElements中的C。/Math
选择C//shortcutsXMLDocument.SelectNodesQuery

这会引起错误。哪个错误?请发布异常详细信息。它会引发错误。哪个错误?请发布异常详细信息。如何使元素中的childnodes能够执行XmlNode n=nodes[0]。childnodes[i];也可以使用xpathesfor for int I=0;i