感谢大家以前的答案...嘿,实际上我想从XML文档中提取文件和文件夹列表....这是我的XML文档看起来像......
<TrebuchetWorkspaceTemplate>
<InputDocument>
<BusinessDocument>
<BusinessRequirement />
<ProcessModel />
</BusinessDocument>
<FunctionalDocuments />
<UseCases />
<Agile />
</InputDocument>
<Miscellaneous />
这里有trebuschet有2个子文件inputdoc和miscell ..... inpout doc还有5个文件夹,其中business doc有2个子文件夹......
现在我想提取内容并从中创建一个文件夹结构(希望你得到它).....并添加到Capability元素并返回它....但是我得到一个错误的文件夹结构而不是预期6有18个孩子.....(如果你愿意,会给你它)...这是我的计划....
public Capability Parse(XElement xElem)
{
Capability capParent = newCapability();
capParent.Name =xElem.Name.LocalName;
if (xElem.HasElements)
{
foreach (XElement xChild in xElem.Descendants())
{
Capability capChild = Parse(xChild);
capParent.Children.Add(capChild);
}
}
return capParent;
}
任何人都可以帮助我正确地获取代码......?
答案 0 :(得分:1)
使用.Elements()
代替.Descendants()
。 .Descendants()
给你所有的孩子和孙子,等等。 .Elements()
只给你直接的孩子。