C# 按名称检索XDocument的元素
我有一个XML文档。我想检索根节点的特定子节点。根节点没有名称空间,但是子节点有名称空间,尽管它们都是相同的。将此元素作为元素检索的最佳方法是什么?根节点的名称空间并不重要 你可以直接写C# 按名称检索XDocument的元素,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,我有一个XML文档。我想检索根节点的特定子节点。根节点没有名称空间,但是子节点有名称空间,尽管它们都是相同的。将此元素作为元素检索的最佳方法是什么?根节点的名称空间并不重要 你可以直接写 XNamespace ns = "http://..."; var elem = doc.Element(ns + "TagName"); 如果您不知道子项的名称空间,您可以通过它来匹配它们,它引用名称的本地(非限定)部分 string name = "purchase"; var query = xml.D
XNamespace ns = "http://...";
var elem = doc.Element(ns + "TagName");
如果您不知道子项的名称空间,您可以通过它来匹配它们,它引用名称的本地(非限定)部分
string name = "purchase";
var query = xml.Descendants()
.Where(e => e.Name.LocalName == name);
这将返回一个
IEnumerable
。从那里,您可以循环使用它,或者如果您只希望存在一个,可以使用它。使用XPath导航XML层次结构如何?