2012-02-10 33 views
0

我正在創建一個windows mobile 6應用程序,它將爲不同的客戶端使用web服務(.asmx)。 據我所知,我將需要手動「添加Web引用」;那麼我將能夠調用這些功能。 是否可以將Web引用配置爲來自後面代碼的變量? 這樣我就可以將Web服務的URL保存在一個文本文件中。對於不同的客戶端,我只需要編輯該文本文件,而不是重新編譯該應用程序。從後面的代碼配置web服務

+0

不能一般不說,但你可以在這裏找到一個工作http://social.msdn.microsoft.com/forums/en-US/csharpgeneral/thread/39138d08-aa08-4c0c-9a58-0eb81a672f54讓我知道這是否有幫助 – MethodMan 2012-02-10 18:52:04

回答

0

您必須在設計時添加Web引用。

在運行時,您可以使用Url屬性修改目標Web服務的URL。下面是在app.config拉動目標URL的一個例子:

var ws = new MyWebService(); 
ws.Url = ConfigurationManager.AppSettings["SomeUrl"].ToString(); 

唯一這裏的缺點是,在設計時的WSDL和運行時服務必須匹配。

0

是的,只是添加類似:

<configuration> 
    <appSettings> 
     <add key="WebReference" value="URLofASMX"/> 
... 

然後通過調用它:

string URL = ConfigurationManager.AppSettings["WebReference"].ToString(); 

你需要可能是一個新的參考System.Configuration添加到項目,如果你不能訪問ConfigurationManager只需包括System.Configuration

+0

我已經將System.Configuration添加到項目中,但名稱空間未找到 – RoyT 2012-02-10 19:49:53