在vs2010发布期间,XPath查询未返回结果

时间:2012-09-10 19:34:57

标签: xpath xdt-transform

我正在使用内置xdt内容的vs 2010发布网站。我知道转换是有效的,因为web.config的其他元素正在转换。

这是导致问题的转换语句:

<param name="ssrsServiceUrl" value="thevalue" xdt:Locator="XPath   (/configuration/unity/container/register[@name='ReportingRegistration']/constructor/param[@name='ssrsServiceUrl'])" xdt:Transform="SetAttributes(value)"/>

这是配置文件(仅限相关部分)

<?xml version="1.0"?>
<configuration>
 <unity xmlns="http://schemas.microsoft.com/practices/2010/unity">
  <container>
   <register name="ReportingRegistration" type="IMyType" mapTo="MyType">
    <lifetime type="singleton"/>
    <constructor>
     <param name="ssrsServiceUrl" value="foovalue"/>
    </constructor>
   </register>
  </container>
 </unity>
</configuration>

我省略了web.config中的多个参数。

1 个答案:

答案 0 :(得分:0)

事实证明,问题是Unity块中定义的命名空间。我把它拿出来解决了这个问题。我不确定为什么会这样做。我相信它是.net中XPath查询解析器实现的限制,而不是XPath本身。