如何使用Web.config转换选择注释或插入注释?
在任何地方我都找不到任何相关信息.
我试图这样做:
1)在Web.config中的现有注释之前插入一段xml(< serviceAuthorization impersonateCallerForAllOperations =“true”/>)
要么
2)在一组兄弟姐妹的末尾插入注释和xml:
据我所知,Web.config转换不支持xPath轴,我尝试了其中一些尝试在第一个注释之前插入节点:
<serviceAuthorization impersonateCallerForAllOperations="true" xdt:Transform="InsertBefore(/configuration/system.serviceModel/behaviors/serviceBehaviors/behavior[@name='behaviorOne']/serviceMetadata/preceding::comment()[1])"/>
<serviceAuthorization impersonateCallerForAllOperations="true" xdt:Transform="InsertBefore(/configuration/system.serviceModel/behaviors/serviceBehaviors/behavior[@name='behaviorOne']/child::node()[1]"/>
我尝过其他几个,但你明白了.我在预览变换时遇到错误.
我似乎也无法找到有关如何插入评论的任何信息.我错过了什么吗?
最佳答案 我相信转换仅限于对元素或属性进行操作.至少,xdt:Transform上的
documentation都没有提及任何可用于添加注释的内容.
至于Locator,似乎有一些支持轴,因为我能够使用以下内容:
<spring >
<objects xmlns="http://www.springframework.net">
<object >
<constructor-arg index="0" type="System.Uri" value="https://example.com/test" xdt:Locator="Condition(../@name='requestConfig' and @index='0')" xdt:Transform="SetAttributes(value)"/>
</object>
</objects>
在以下操作时:
<spring >
<objects xmlns="http://www.springframework.net">
<object name="requestConfig" type="Example.Namespace.RequestConfig, Example" singleton ="true">
<constructor-arg index="0" type="System.Uri" value="https://example.com/production"/>
<constructor-arg index="1" value="45000"/>
</object>
</objects>
如您所见,上面使用父轴以匹配要转换的元素.