2012-02-10 19 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