Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I change a web reference in a production .NET website?

Our web reference does not seem to be defined in web.config of the website that consumes it. I found that there is a configuration file called "Reference.map" in the "Web References" folder that looks editable, but when I edit them nothing happens. I even renamed the WSDL file in the folder to see if it would get a new one. It did not.

Do I have to do a build just to change the URL of a referenced Web Service?

like image 307
JoshBaltzell Avatar asked Feb 25 '10 16:02

JoshBaltzell


1 Answers

You can mark a web reference as static or dynamic URL. If you choose dynamic then it will add the URL to the web.config which you can then change in your production environment.

If it is marked as static then it is compiled into the binary and is not changeable without a rebuild.

If it is already dynamic then the code looks for the dynamic URL and then if it can't find it then it uses the default original. Therefore, you can just add an entry into the web config such as:

<applicationSettings>
    <MySystem.Properties.Settings>
        <setting name="MySystem_MyService" serializeAs="String">
            <value>http://mysystem/service.asmx</value>
        </setting>
    </MySystem.Properties.Settings>
</applicationSettings>
like image 86
Robin Day Avatar answered Oct 17 '22 02:10

Robin Day