web.release.config更改动态webservice url

时间:2010-10-20 10:02:54

标签: c# asp.net web-config release publish

我正在编辑我的web.release.config文件以进行生产。我想在发布后更改web.config文件。 我找到了如何通过正确使用web.release.config文件来更改web.config,但不是针对此特定组件。

动态网络服务的网址必须更改。

在web.config中:

<applicationSettings>
    <FooService.Properties.Settings>    
        <setting name="FooService_Student" serializeAs="String">  
            <value>http://testwebservices.foo.bar.nl/Student.asmx</value>  
        </setting>  
        <setting name="FooService_User" serializeAs="String">  
            <value>http://testwebservices.foo.bar.nl/User.asmx</value>  
         </setting>  
    </FooService.Properties.Settings>  
</applicationSettings>

现在,如何更改两个设置中的<value>?我尝试了以下方法,但这没有成功:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
    <applicationSettings>
        <FooService.Properties.Settings>    
            <setting name="FooService_Student" serializeAs="String" xdt:Transform="Replace">  
                <value>http://webservices.foo.bar.nl/Student.asmx</value>  
            </setting>  
            <setting name="FooService_User" serializeAs="String" xdt:Transform="Replace">  
                 <value>http://webservices.foo.bar.nl/User.asmx</value>  
            </setting>  
        </FooService.Properties.Settings>  
    </applicationSettings>
 </configuration>

有人遇到过此事吗?

三江源!

2 个答案:

答案 0 :(得分:2)

xdt:Transform="Replace"添加到applicationSettings代码。

<applicationSettings xdt:Transform="Replace"> 
<FooService.Properties.Settings>     
    <setting name="FooService_Student" serializeAs="String">   
        <value>http://webservices.foo.bar.nl/Student.asmx</value>   
    </setting>   
    <setting name="FooService_User" serializeAs="String">   
        <value>http://webservices.foo.bar.nl/User.asmx</value>   
     </setting>   
</FooService.Properties.Settings>   

答案 1 :(得分:1)

如何添加xdt:Locator="Match(name)",这可能是您需要找到要替换的确切节点。