我正在使用XPath在UCD部署期间修改应用程序配置文件中的某些设置,但是我无法弄清楚正确使用的路径。
我能够更改连接字符串没问题,但是应用程序设置使用了无法匹配的其他语法。
这是我使用的XPath:
//configuration/applicationSettings/ServiceTaskFunctions.Properties.Settings/setting[@name='Hello']/@value->${p:environment/World}
${p:environment/World}
是我有信心起作用的环境属性,因为连接字符串以相同的方式工作。
我期望以下内容:
<setting name="Hello" serializeAs="String">
<value>World</value>
</setting>
但是我得到的是:
<setting name="Hello" serializeAs="String">
<value></value>
</setting>
实体 value
是元素,而不是属性。
因此,将/@value
更改为/value
:
//configuration/applicationSettings/ServiceTaskFunctions.Properties.Settings/setting[@name='Hello']/@value
to
//configuration/applicationSettings/ServiceTaskFunctions.Properties.Settings/setting[@name='Hello']/value