我正在尝试做的是深度返回该深度处的节点名称。我不关心那个级别的信息只是元素名称。
所以给定1它只会返回BookStoreInfo和Book
给出2它只返回地址,电话,传真,BookName,ISBN
<BookStore>
<BookStoreInfo>
<Address />
<Tel />
<Fax />
<BookStoreInfo>
<Book>
<BookName />
<ISBN />
<PublishDate />
</Book>
<Book>
....
</Book>
</BookStore>
这就是我目前正在尝试的。当我对节点进行计数时,它返回11这是正确的,但当我显示节点时,它显示节点及其中我不想要的所有内容
XDocument doc = XDocument.Load(doc);
var AnswersScript = doc.Document.Element("root").Nodes();
int count = 0;
foreach (var node in AnswersScript)
{
count++;
Console.WriteLine(node);
}
Console.WriteLine(count);
答案 0 :(得分:0)
如果我的问题的答案只有一半
XDocument doc = XDocument.Load(@"..\..\doc.xml");
var AnswersScript = doc.Document.Element("root").Elements();
int count = 0;
foreach (var node in AnswersScript)
{
count++;
if (doc.Document.Element("root").Element(node.Name).Elements().Count() > 1)
{
Console.WriteLine(node.Name);
}
else
{}
}
Console.WriteLine(count);
Console.ReadKey();
}
现在为您提供了元素节点我试图想出一种动态解析它的方法,而无需对深度进行硬编码