Zug*_*gbo 6 asp.net web-config web-config-transform
我有一个引用了很多WCF服务的C#项目.对于本地测试,我想替换身份标记的内容,以便它接受在localhost上运行的任何内容.
以下转换有效,但仅在第一个匹配位置插入dns元素.因此,如果我引用了5个端点,则会有一个dns标记,而其他端点都会有空的标识元素.
<system.serviceModel>
<client>
<endpoint>
<identity>
<dns xdt:Transform="Insert" value="localhost"/>
<userPrincipalName xdt:Transform="RemoveAll" value="someIdentity" />
</identity>
</endpoint>
</client>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
如何更改所有匹配元素,而不仅仅是第一个?
使用该xdt:Locator属性定义 XPath 表达式以匹配<identity>要插入的所有元素。
<system.serviceModel>
<client>
<endpoint>
<identity xdt:Locator="XPath(//identity)">
<dns xdt:Transform="Insert" value="localhost"/>
<userPrincipalName xdt:Transform="RemoveAll"/>
</identity>
</endpoint>
</client>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)