程序中有一段
string Xpath = "//Task/[@Source='C:\\测试' and Dest='D:\\我的文档']";
XmlNode MyXmlNode = MyXmlDocument.SelectSingleNode(Xpath);
string TempSuffix = MyXmlNode.Attributes["Suffix"].Value.ToString();执行后总是报错"表达式的计算结果必须为节点集。"
 不知什么原因,请高手赐教

解决方案 »

  1.   

    你的xml文档?string Xpath = "//Task/[@Source='C:\\测试' and Dest='D:\\我的文档']";这句应该有问题
    改为string Xpath = "//Task/包含source和dest的节点名[@Source='C:\\测试' and Dest='D:\\我的文档']";
      

  2.   

    我的xml 文档是:
      <?xml version="1.0" standalone="yes" ?> 
    <config>
     <FileCopy>
      <Task TaskId="2" Name="任务2" Source="C:\测试" Dest="D:\我的文档" Suffix="txt" Frequency="每小时1点" /> 
      </FileCopy>
      </config>
      

  3.   

     "//Task/[@Source='C:\\测试' and Dest='D:\\我的文档']"
    改为
    "//Task[@Source='C:\\测试' and Dest='D:\\我的文档']";
    试试
      

  4.   

    上面有些错
    //Task[@Source='C:\\测试' and @Dest='D:\\我的文档']
      

  5.   

    楼上正解
    //Task[@Source='C:\\测试' and @Dest='D:\\我的文档']
    对于属性前要加@符号