c# - 将 XML 字符串 block 附加到现有的 XmlDocument

标签 c# xml

我有一个 XmlDocument 已经存在并且是从文件中读取的。

我想向文档中的节点添加一大块 Xml。有没有一种创建和添加所有节点的好方法,而不会使我的代码因许多 .CreateNote 和 .AppendChild 调用而困惑?

我想要一些方法来制作有效 Xml 部分的字符串或 stringBuilder,并将其附加到 XmlNode。

例如: 原始 XmlDoc:

<MyXml>
   <Employee>
   </Employee>
</MyXml>

并且,我想向 Employee 添加人口统计(有几个 child )标签:

<MyXml>
   <Employee>
      <Demographic>
         <Age/>
         <DOB/>
      </Demographic>
   </Employee>
</MyXml>

最佳答案

我建议使用 XmlDocument.CreateDocumentFragment如果您有自由格式字符串的数据。您仍然需要使用 AppendChild 将片段添加到节点,但您可以自由地在 StringBuilder 中构建 XML。

XmlDocument xdoc = new XmlDocument();
xdoc.LoadXml(@"<MyXml><Employee></Employee></MyXml>");

XmlDocumentFragment xfrag = xdoc.CreateDocumentFragment();
xfrag.InnerXml = @"<Demographic><Age/><DOB/></Demographic>";

xdoc.DocumentElement.FirstChild.AppendChild(xfrag);

关于c# - 将 XML 字符串 block 附加到现有的 XmlDocument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/179173/

相关文章:

c# - 如何在 .Net 中创建 Ntlm Type 1 和 Type 3 消息

c# 添加 GridView - 类 dataGridView1 无法识别

c# - 需要对象引用?

c# - 单个 using 语句,多个 MVC View

Java:从 wsdl 获取示例请求 XML

c# - 我应该如何在 C# > 4.0 中运行后台线程

java - Spring Data Rest 支持 json 和 xml

python - 将 JSON 转换为 XML 时避免字符转义

python - 在 Python 中创建与 xml.etree.ElementTree.findall() 一起使用的字典时,是否有默认命名空间的键?

java - 在 Java 中显示 XML