将XML属性添加到元素

时间:2012-12-26 20:35:11

标签: c# xml

要将属性添加到现有xml元素<D_COMMS>,请不要替换现有属性,只需将其添加到开头。

这是XML

<OUTPUT version="2.0">
 <RESPONSE>
  <DATA id="17fb13cca6c5463597fdf340c044069f">
    <![CDATA[<ID> jdfkldklfjdkl</ID><D_COMMS>ON this date...</D_COMMS>]]>
  </DATA>
 </RESPONSE>

这个XML是HTTPWebResponse的结果,所以这就是XMl回到我身边时的样子,我需要为D_COMMS元素添加一个值并将其发送回去。这样的事情就像寻找后代一样数据并以这种方式添加。

var addelement = doc.Descendants("DATA").First();
addelement.Add(XElement("D_COMMS","On this date we said"));

2 个答案:

答案 0 :(得分:3)

您可以找到DATA节点并添加属性,如下所示:

XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
XmlNodeList dataNodes = doc.GetElementsByTagName("DATA");
if (dataNodes != null && dataNodes.Count > 1)
{
    dataNodes[0].Attributes.Append(doc.CreateAttribute("D_COMMS", "On this date we said"));
}

答案 1 :(得分:3)

设置属性的更好方法是Adding attributes to an XML node

    XmlElement id = doc.CreateElement("id");
    id.SetAttribute("userName", "Tushar");
相关问题