我有一个像这样的xml:
<Customer id="">
<Name />
<Address />
</Customer>
我只想选择一个根节点标题(而不是页脚)及其属性,而不包含其子节点:
<Customer id="">
最佳答案
如果它是根元素,则可以使用 Root
属性:
XDocument Doc = XDocument.Parse(StringXML);
var RootNode= Doc.Root;
string NodeName = RootNode.Name.ToString();
string AttributeValue = RootNode.Attribute("id").Value;
如果 xml 中有多个 Customer 节点,则必须使用 linq:
var nodes = from customer in Doc.Descendants("Customer")
select new {
NodeName = customer.Name.ToString(),
Id = customer.Attribute("id").Value
};
更新:
要获取所有属性,您可以这样使用Attributes()
:
var nodess = from customer in Doc.Descendants("Customer")
select new {
NodeName = customer.Name.ToString(),
Attributes = customer.Attributes()
};
关于c# - 如何使用 C# 从 XmlDocument 获取根节点及其属性但不包含子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28738302/