如果您有自由格式字符串中的数据,我建议使用XmlDocument.CreateDocumentFragment.您仍然必须使用AppendChild将片段添加到节点,但您可以自由地在StringBuilder中构建XML.
XmlDocument xdoc = new XmlDocument(); xdoc.LoadXml(@""); XmlDocumentFragment xfrag = xdoc.CreateDocumentFragment(); xfrag.InnerXml = @" "; xdoc.DocumentElement.FirstChild.AppendChild(xfrag);
试试这个:
employeeNode.InnerXml = "";
或者(如果您有另一个要使用的XML文档):
employeeNode.AppendChild(employeeNode.OwnerDocument.ImportNode(otherXmlDocument.DocumentElement, true));
作为替代方案,这是你可以用更LINQy 3.5方式做到的:
XDocument doc = XDocument.Load(@"c:\temp\test.xml"); XElement demoNode = new XElement("Demographic"); demoNode.Add(new XElement("Age")); demoNode.Add(new XElement("DOB")); doc.Descendants("Employee").Single().Add(demoNode); doc.Save(@"c:\temp\test2.xml");