如何在没有网络参考的情况下调用网络服务?

时间:2020-03-06 14:38:41  来源:igfitidea点击:

我想调用Web服务,但是直到运行时我才知道URL。

什么是获取Web参考的最佳方法,而无需实际提交URL。

如果有1个客户端在10个不同的域上访问相同的Web服务,该怎么办?

解决方案

创建Web参考,然后将Web服务转换为动态Web服务。动态Web服务允许我们修改Url。

我们需要立即创建Web参考,以确保应用程序了解可用的接口。通过切换到动态Web服务,我们可以在代码中初始化Web参考之后修改.Url属性。

service = new MyWebService.MyWebService();
service.Url = myWebServiceUrl;

我们可以更改由Web参考向导生成的类的Url属性。

这是一个非常相似的问题。如何在不重新编译的情况下在.NET中动态切换Web服务地址?

我们可以通过一个简单的http请求来调用Web服务:
例子:

http://serverName/appName/WSname.asmx/yourMethod?
param1 = val1&param2 = val2;

如果通过Http调用,则HTTP响应将被序列化。

但是,如果我们使用Web引用,则始终可以通过Web服务代理类中的Url属性来更改Url。网址通常会存储在web.config中

我希望我能帮助你