2011-12-22 52 views
2

我有一個類庫有一個Web服務的引用,我將這個類庫包含在我的web.config中。如何更改存儲在類庫中的Web服務的URL?

現在我想能夠動態更改Web服務的URL(就像您通常在web.config中執行的操作一樣)。我怎樣才能做到這一點?我試圖把設置放入web.config,但改變它沒有任何作用。

<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> 

回答

2

將Web服務URL移動到主機應用程序的web.config絕對是大多數情況下的方式。你提到改變web.config文件中的值沒有任何作用,但我會仔細檢查一下。除非你的url是硬編碼的,否則這是主機進程讀取它的位置。

+1

該網址設置在類庫的app.config中...我如何防止它被硬編碼? – zachary 2011-12-22 16:47:06

+1

只要您在web.config中具有相同鍵的條目,那麼app.config的值將被忽略。只需將它從類庫app.config複製/粘貼到主機web.config即可。 – 2011-12-22 17:13:25

+0

我確實擁有相同的密鑰。我會在問題中發佈更新的配置以向您展示。也許我錯過了一些東西。 – zachary 2011-12-22 17:32:43