以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 HTML/XHTML/Ajax/Web 2.0/Web 3.0 』  (http://bbs.xml.org.cn/list.asp?boardid=22)
----  asp.net设置结点属性的问题! [原创]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=22&rootid=&id=46861)


--  作者:haoran_70
--  发布时间:5/14/2007 2:58:00 PM

--  asp.net设置结点属性的问题! [原创]
一个xml文件:
myxml.xml
<school>
  <students>
    <add name="陈中和" value="排球" />
    <add name="邓亚平" value="乒乓球" />
  </students>
  <teacher>
    <add name="刘德华" value="语文" />
    <add name="张学友"  value="数学" />
  </teacher>
</school>
我想把
<add name="张学友" value"数学">的value值设置成  "英语" 我应该怎么解决!
我的代码如下:
XmlDocument doc = new XmlDocument();
       doc.Load(Server.MapPath("myxml.xml"));
       XmlNodeList list = doc.GetElementsByTagName("teacher");
        if(list.Count>0)
        {
            foreach (XmlElement _element in list)
            {
                if (_element.Name == "张学友")
                {
                    _element.Attributes["value"].Value = "英语";
                    break;
                }
            }
doc.Save(Server.MapPath("myxml.xml"));
        }
为什么不行呢?没的一点反应.
提示说有多个根结点!
为什么!
--  作者:Qr
--  发布时间:5/14/2007 8:59:00 PM

--  
参考:
 static void Main() {
  XmlDocument xmldoc = new XmlDocument();
  xmldoc.Load("myxml.xml");

  XmlNode oNode = xmldoc.SelectSingleNode("//teacher");

  foreach(XmlElement deptNode in oNode){
   if(deptNode.GetAttribute("name")=="张学友") {
    deptNode.SetAttribute("value","英语");
   }
  }

  xmldoc.Save("myxml.xml");
 }


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms