/ / Wie kann ich die in einer Klassenbibliothek vorhandene URL meines Web-Service ändern? - asp.net, .net, web-services

Wie ändere ich die URL meines Web-Service, der in einer Klassenbibliothek vorhanden ist? - asp.net, .net, Web-Dienste

Ich habe eine Klassenbibliothek, die einen Verweis auf einen Webdienst hat, und ich füge diese Klassenbibliothek in meine web.config ein.

Jetzt möchte ich das dynamisch ändern könnenURL des Webdienstes (wie Sie es normalerweise in der web.config tun würden). Wie kann ich das machen? Ich habe versucht, die Einstellungen in die web.config zu übernehmen, aber das Ändern hat keine Auswirkungen.

  <applicationSettings>
<MyClassLibraryAppConfig.WCFServices.Properties.Settings>
<setting name="WebServiceKey"
serializeAs="String">
<value>http://localhost/badaddress.asmx</value>
</setting>
</MyClassLibraryAppConfig.WCFServices.Properties.Settings>
</applicationSettings>

<applicationSettings>
<MyApp.Properties.Settings>
<setting name="WebServiceKey"
serializeAs="String">
<value>http://localhost/goodaddress.asmx</value>
</setting>
</MyApp.Properties.Settings>
</applicationSettings>

Antworten:

2 für die Antwort № 1

Verschieben der Webdienst-URL auf den HostIn den meisten Fällen ist die Anwendung web.config definitiv der richtige Weg. Sie haben erwähnt, dass das Ändern des Werts in der Datei web.config keine Auswirkung hat. Wenn Sie nicht die URL hartcodiert haben, ist dies der Ort, von dem der Hostprozess sie lesen würde.


0 für die Antwort № 2

Wenn Sie eine Webreferenz verwenden, lesen Sie Möglichkeiten, Ihren ASMX-Client-Proxy anzupassen. Wenn Sie WCF verwenden, können Sie die Überladung des Proxy-Klassenkonstruktors verwenden, die eine EndpointAddress enthält.