在.net中添加XMl中的元素、节点和文本

本文关键字:节点 元素 文本 net 添加 XMl | 更新日期: 2023-09-27 18:06:48

我想向现有Xml添加元素、节点。我正在使用下面提到的代码,但没有得到正确的Xml输出。

 XmlNode root=doc.SelectSingleNode("DB");
 XmlElement elem = doc.CreateElement("ScopeCleanUp");
 root.AppendChild(elem);
 XmlNode rootLoc= doc.SelectSingleNode("DBSync/ScopeCleanUp");
 XmlElement elemLoc = doc.CreateElement("LocalScope");           
 XmlNode rootScope = doc.SelectSingleNode("DBSync/ScopeCleanUp/LocalScope");
 for (int s = 0; s < 2; s++)
 {
     XmlElement elemScope = doc.CreateElement("ScopeName");
     elemScope.InnerText = s.ToString();
     rootLoc.AppendChild(elemScope);                       
 }
 rootLoc.AppendChild(elemLoc);

我需要下面的Xml输出。

<DB>
<ScopeCleanUp>
<LocalDataBase>
<ScopeName>1</ScopeName> 
<ScopeName>2</ScopeName> 
  </LocalDataBase>
</ScopeCleanUp>
</DB>

在.net中添加XMl中的元素、节点和文本

类似这样的代码应该可以达到这个效果:

        XmlElement db = doc.CreateElement("DB");
        XmlElement scope = doc.CreateElement("ScopeCleanUp");
        XmlElement local = doc.CreateElement("LocalDataBase");
        doc.AppendChild(db);
        db.AppendChild(scope);
        scope.AppendChild(local);
        for (int i = 0; i < 2; i++)
        {
            XmlElement elem = doc.CreateElement("ScopeName");
            elem.InnerText = i.ToString();
            local.AppendChild(elem);
        }