给一个xml添加属性。XmlNodeList fields = doc.SelectSingleNode("/fields/aa").ChildNodes;                    foreach (XmlNode field in fields)
                    {
                        XmlElement xe = (XmlElement)field;
                        xe.SetAttribute("v", "");
                    }生成类似这样的XML<fields>
  <aa>
    <qqq v="">11111</qqq>
    <www v="">22222</www>
  </aa>
  <aa>
    <qqq>20060077</qqq>
    <www>4</www>
  </aa>
  <aa>
    <qqq>20060082</qqq>
    <www>5</www>
  </aa>
  ......
</fields>只给第一行的aa节点下的加上了属性,其他行没加上,如何做让每行都加上一样的属性呢?

解决方案 »

  1.   

     XmlNodeList   nodeList=xmlDoc.SelectSingleNode("fields").ChildNodes;        
    foreach(XmlNode   xn   in   nodeList)  
            {   
             XmlElement   xe=(XmlElement)xn;  
             xe.SetAttribute("","");
            }
      

  2.   

    啊.我表达错意思了好些.我的意思是要设置每个 qqq www节点的属性。要最后的结果是这样<fields>
      <aa>
        <qqq v="">11111</qqq>
        <www v="">22222</www>
      </aa>
      <aa>
        <qqq v="">20060077</qqq>
        <www v="">4</www>
      </aa>
      <aa>
        <qqq v="">20060082</qqq>
        <www v="">5</www>
      </aa>
      ......
    </fields>可是我写的那段只给第一个aa下面的qqq www添加上了,而其他的没有加上
      

  3.   

    doc.SelectSingleNode("/fields/aa")换成selectnodes方法,再套一层循环
      

  4.   


    你这句已经限制了,fields是第一个aa节点下的子节点集合
      

  5.   

    XmlNodeList nodeList=xmlDoc.SelectSingleNode("aa").ChildNodes;   
    foreach(XmlNode xn in nodeList)   
      {   
      XmlElement xe=(XmlElement)xn;   
      xe.SetAttribute("","");
      }
      

  6.   

    能具体点么?我这样做了用selectnodes总体是未实例化