使用XPath Contains函数转换配置条目

时间:2013-12-10 20:54:57

标签: xml xpath configuration

我有一组配置文件,我已设置为在构建时进行转换。在某些情况下,我只需要替换包含某些文件名的配置条目。我遇到的问题是获取正在运行的查询。

以下是自定义配置部分中的配置转换条目

 <filesettings file="application.remote.config" 
               filename="remote file config"    
               dir="C:\Remote\Download"                 
               backupdir="C:\Remote\Download\BackUp"
               xdt:Locator="XPath(//[contains(@file,'remote')])" />

基于以上所述,我想在转换目标调用期间替换文件名中包含单词remote的filesettings条目。这当前给出错误表达式必须评估为节点集。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

仅在节点步骤之后允许谓词。你的XPath表达式

//[contains(@file,'remote')]

不包含任何内容。例如,使用通配符匹配器*

//*[contains(@file,'remote')]

或将其替换为包含@file属性的节点名称(如果它始终相同)。