Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.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# 基于属性值查找XML节点_C#_Xml Parsing_Xmlreader - Fatal编程技术网

C# 基于属性值查找XML节点

C# 基于属性值查找XML节点,c#,xml-parsing,xmlreader,C#,Xml Parsing,Xmlreader,我有一个几乎没有节点的XML文件。每个节点都有“Name”属性。我想根据“Name”属性的值查找XML节点。下面是我编写的代码,但它区分大小写 XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(file); XmlNodeList nodes = xmlDoc.SelectNodes(string.Format("/somevalue/someohtervalue/*[@name = '{0}']", Name)); 如何在不考虑大

我有一个几乎没有节点的XML文件。每个节点都有“Name”属性。我想根据“Name”属性的值查找XML节点。下面是我编写的代码,但它区分大小写

 XmlDocument xmlDoc = new XmlDocument();
 xmlDoc.Load(file);

 XmlNodeList nodes = xmlDoc.SelectNodes(string.Format("/somevalue/someohtervalue/*[@name = '{0}']", Name));

如何在不考虑大小写的情况下找到节点?

您使用了
xmlreader
标记,但没有给出在代码中使用
xmlreader
的指示。您必须使用XPath吗?就我个人而言,我会将LINQ转换为XML与
元素
/
子体
/
的简单混合使用,在这一点上,您可以将任何喜欢的逻辑放入过滤器中。我确信必要时XPath可以不区分大小写,但我更喜欢在可行的情况下使用一种语言,而不是将一种语言嵌入另一种语言中。@JonSkeet请您详细解释一下。我不明白你的意思,请看下面帖子中的我的解决方案:@ChiragFanse:Which part?@JonSkeet,你提到过XPath。如何在上述情况下使用不区分大小写的XPath?