6

既存の 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"));
4

2 に答える 2

4

属性を設定するためのより良い方法はここにあります XMLノードに属性を追加する

    XmlElement id = doc.CreateElement("id");
    id.SetAttribute("userName", "Tushar");
于 2015-08-18T06:11:19.987 に答える
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"));
}
于 2012-12-26T20:44:40.937 に答える