将xmlElement添加到XmlNode中

本文关键字:XmlNode 添加 xmlElement | 更新日期: 2023-09-27 18:21:38

如何将元素添加到XmlNode中。

var xmlDoc = new XmlDocument();
xmlDoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
XmlNode nodes = xmlDoc.SelectSingleNode("/configuration/schedulers");

XML示例:

<schedulers>
<Scheduler name="test1" alert="4" timerType="type1" cronExpression="0/10 * * * * ?">
  <property name="customerName" value="customerA" />
</Scheduler>
<Scheduler name="test2" alert="3" timerType="type2" cronExpression="0/15 * * * * ?" />
<Scheduler name="test3" maxFailureAlert="3" timerType="Type3" cronExpression="0/20 * * * * ?" />

我想添加新的调度器

<schedulers>
  <Scheduler name="test1" alert="4" timerType="type1" cronExpression="0/10 * * * * ?">
    <property name="customerName" value="COMMON_MODEL" />
  </Scheduler>
  <Scheduler name="test2" alert="3" timerType="type2" cronExpression="0/15 * * * * ?" />
  <Scheduler name="test3" maxFailureAlert="3" timerType="Type3" cronExpression="0/20 * * * * ?" />
  <Scheduler name="test4" maxFailureAlert="3" timerType="Type3" cronExpression="0/50 * * * * ?" />
</schedulers>

将xmlElement添加到XmlNode中

您可以使用XmlDocument.CreateElement方法创建元素:

var xmlDoc = new XmlDocument();
xmlDoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
XmlNode nodes = xmlDoc.SelectSingleNode("/configuration/schedulers");
var newElement = xmlDoc.CreateElement("Scheduler");

然后,您可以使用SetAttribute:设置任何属性

newElement.SetAttribute("name", "test4"); 
newElement.SetAttribute("maxFailureAlert", "3"); 
newElement.SetAttribute("timerType", "Type3"); 
newElement.SetAttribute("cronExpression", "0/50 * * * * ?"); 

并在现有元素的基础上添加一个新元素:

nodes.AppendChild(newElement);

不要忘记保存文档:

xmlDoc.Save(filePath);