C# Xml Linq-轻松插入 Xml 子节点

作者:vkvi 来源:ITPOW(原创) 日期:2022-3-24

需求

根节点 root,子节点是数个 item,现在需求是:

  • 原来为空,就构造这么一个 Xml 字符串。

  • 原来不为空,就插入一个 item。

代码

using System.Xml.Linq;

string xml = @"<item>
	<name>...</name>
	<age>...</age>
</item>";

if (string.IsNullOrEmpty(oldXml))
{
	return $@"<root>{xml}</root>";
}
else
{
	XElement oldElement = XElement.Parse(oldXml);
	oldElement.Add(XElement.Parse(xml));
	return oldElement.ToString();
}

要点

XElement.Parse() Xml 字符串转换成 XElement

XElement.ToString()XElement 转换成 Xml 字符串

XElement.Add() 是添加一个子节点

XElement 的节点就是当前载入 Xml 字符串的节点,如上,并不是根节点的上一层,即不需要再选择 root 节点,因为当前就是 root 节点。

另外

如果要选择节点的话,XElement.Element() 这个方法里面可直接跟节点名称(字符串)。

相关文章