首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用RootNode XmlDocument在XML中插入XmlDocument

使用RootNode XmlDocument在XML中插入XmlDocument
EN

Stack Overflow用户
提问于 2017-03-27 14:44:24
回答 2查看 79关注 0票数 0

我有一个XML格式的字符串,由一个没有RootNode的字符串返回,如下所示:

代码语言:javascript
复制
<Node1 Id = "1" Value = "a"/>
<Node2 Id = "2" Value = "b"/>
<Node3 Id = "3" Value = "c"/>

现在,我想要的是将返回的字符串嵌入根节点中,例如

代码语言:javascript
复制
<XML>
   <Node1 .... />
   <Node2 .... />
</XML>

如何使用System.Xml命名空间(XmlDocument、ecc.)来完成此操作?

我有以下代码:

代码语言:javascript
复制
XmlDocument xml = new XmlDocument(); 
xml.Loadxml(stringWithoutRoot); 

提前谢谢你。

编辑:,ok,对不起,我不清楚。我真正的问题是这个。我有很多方法在做同样的事情,唯一改变的是必须执行的存储过程的名称。因此,为了使代码更易读,我想做的是只创建一个方法,并传递存储过程的名称作为它的输入参数。我觉得这更符合逻辑。

第二个问题:我注意到一些存储过程返回带有根节点的xml,而其他存储过程则不返回,所以我的解决方案也是将XML作为输入参数传递。

举个例子,

代码语言:javascript
复制
executeSqlCommand(mySP, "<XML></XML>)

将存储过程的结果放入XML中,如下所示

代码语言:javascript
复制
<XML>resultFromSPWithoutRootNode</XML>

所以我需要这样的东西

代码语言:javascript
复制
string result = ..... // some operation in DB

if (!string.IsNullOrEmpty(rootXMl))   // where rootXML is my second parameter
{
    append the result to the root node rootXML
}

附加的方式不见了。

EN

回答 2

Stack Overflow用户

发布于 2017-03-27 14:57:48

也许是这样的?

代码语言:javascript
复制
XmlDocument xml = new XmlDocument();
string nodesString = "<node/>" ;
xml.LoadXml("<root>" + nodesString+ "</root>");
票数 1
EN

Stack Overflow用户

发布于 2017-03-27 15:57:30

我将尝试像这里建议的那样使用XmlDocumentFragment

Append XML string block to existing XmlDocument

谢谢

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43049530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档