使用SelectSingleNode()修改xml文件??

Maxu 2003-07-27 05:54:24
private bool SetOptionValue(string userId, string groupId, string optionName, string optionValue)
{
XmlDocument xd = new XmlDocument();
xd.Load("..\\..\\UserOptions.xml");

XmlNode root = xd.DocumentElement;
string p = String.Format("/UserOption[@UserId='{0}']/OptionsGroup[@GroupId='{1}']/Option[@Name='{2}']", userId, groupId, optionName);
XmlNode o = root.SelectSingleNode(p);
o.Attributes["Value"].Value = optionValue;
xd.Save(Console.Out);
return true;
}

调用SetOptionValue"c", "1", "distance", "100")时出错?
root.SelectSingleNode(p)返回空值。为什么?!!

///文件:“..\\..\\UserOptions.xml”

<?xml version="1.0" encoding="utf-8" ?>
<UserOptions xmlns="http://tempuri.org/UserOptions.xsd">
<UserOption UserId="a">
<OptionsGroup GroupId="2">
<Option Name="zoo" Value="12"></Option>
<Option Name="distance" Value="0.5"></Option>
</OptionsGroup>
<OptionsGroup GroupId="1">
<Option Name="zoom" Value="1101"></Option>
<Option Name="distance" Value="0.5"></Option>
</OptionsGroup>
</UserOption>
<UserOption UserId="b">
<OptionsGroup GroupId="1">
<Option Name="zoom" Value="100"></Option>
<Option Name="distance" Value="1"></Option>
</OptionsGroup>
</UserOption>
<UserOption UserId="c">
<OptionsGroup GroupId="1">
<Option Name="zoom" Value="100"></Option>
<Option Name="distance" Value="200"></Option>
</OptionsGroup>
</UserOption>
</UserOptions>
...全文
54 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
starry11 2004-03-25
  • 打赏
  • 举报
回复
本来就没有一个数据符合要求嘛,当然返回空了
udonome 2004-03-25
  • 打赏
  • 举报
回复
可能是传递的参数不符合要求
Maxu 2003-07-27
  • 打赏
  • 举报
回复
没人出招?!!

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧