从代码背后配置web服务

本文关键字:web 服务 配置 背后 代码 | 更新日期: 2023-09-27 18:24:08

我正在创建一个windows mobile 6应用程序,它将为不同的客户端使用web服务(.asmx)。据我所知,我将需要手动"添加Web引用";那么我将能够调用这些函数。是否可以从代码背后将web引用配置为变量?这样我就可以把web服务的url保存在一个文本文件中。对于不同的客户端,我只需要编辑该文本文件,而不需要再次重新编译该应用程序。

从代码背后配置web服务

您必须在设计时添加Web引用。

在运行时,您可以使用Url属性修改目标web服务的URL。以下是从app.config:中提取目标URL的示例

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

这里唯一的问题是设计时服务和运行时服务的WSDL必须匹配。

是的,只需添加以下内容即可:

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

然后调用:

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

如果不能仅通过包含System.Configuration来访问ConfigurationManager,则可能需要将对System.Configuration的新引用添加到项目中。