如何动态绑定Web服务URL

时间:2012-11-06 09:50:30

标签: wcf webservice-client

我将web服务URL存储在web.config或app.config中。当我打电话给像

这样的网络服务时
 ServiceAvailabilityTestClient.TestClient servAvailClient = new ServiceAvailabilityTestClient.TestClient();
servAvailClient.url= myapp.config url here.
servAvailClient.CallValidateCityPostalCodeZip();

问题是名为url的属性没有出现。 sp请告诉我该怎么做。 我只是添加wsdl文件位置作为服务引用,因为调用的Web服务路径未被添加。我尝试添加为Web服务引用的Web服务URL是

https://devwebservices.purolator.com/EWS/V1/ServiceAvailability/ServiceAvailabilityService.asmx

1)我无法解释为什么我无法将此网络服务网址添加为服务参考

2)为什么url属性不会暴露在客户端。

任何人都可以指导我是什么事。感谢

2 个答案:

答案 0 :(得分:1)

您可以通过生成的客户端或ChannelFactory执行此操作:

var client = ChannelFactory(IWcfService).CreateChannel(Binding, ServiceModel.EndpointAdress)

or 

var client = New Client(binding, RemoteAdress)

EndpointAdress只接受构造函数中的字符串或uri,例如http://yourservice.asmx

答案 1 :(得分:0)

您使用的是<System.ServiceModel/>配置部分吗?如果是这样,您不必执行任何操作 - 在创建通道时,将从配置的<client/>部分加载URL。