XmlDocument - ParentNode和DocumentType为null

时间:2009-02-11 04:16:47

标签: .net xmldocument system.xml

在.NET中,如果您将LoadXml()放入XmlDocument对象,然后ParentNode和DocumentType为空,这意味着什么?

另外,我将此作为xmldoc.FirstChild.Value的答案:
version="1.0" encoding="utf-8"

这是对的吗?我做了任何XML DOM的东西已经有一段时间了。 该文件编码为UTF-8。认为这应该不是问题。 我的doc有简单的真/假验证方法吗?

更新
如果NodeType是Element,你如何返回“标签名称”?

当前的想法:
xmldoc.ChildNodes [1]请将.Name;

我注意到Name属性是Get only。什么是最好的工具,如果你想将root标签交换为其他东西(比如'feed'到'container'),但是想要比XSLT稍微轻一点的东西,而不是简单的文本/替换。 仍然希望看到一个LINQ to XML示例。谢谢大家的帮助。猜猜它比我想象的要长,因为我看过.NET中的XML内容。

2 个答案:

答案 0 :(得分:1)

从MSDN文档中,XmlDocument.ParentNode始终返回null - 文档本身是根,因此它没有父级。 DocumentType属性返回DOCTYPE标记,您的示例没有该标记。

答案 1 :(得分:1)

始终可以通过XmlDocument.DocumentElement属性访问根元素。 可以使用XmlDocument.DocumentElement.LocalName字符串属性确定根元素的名称。

如果要重命名根元素,最好使用另一个XmlDocument实例,使用XmlDocument.CreateNode添加根元素,调用它你喜欢的,然后 循环原始文档的根元素的子元素,并使用CloneNode(bool deep)方法,结合XmlNode.ImportNode方法将原始文档的其余部分复制到新文档。