Silverlight:如何在使用WCF的时候动态指定服务地址
因为Silverlight做好的组件可以用在任意的网站,而其调用的WCF服务一般都不可能将地址固定地写在Silverlight控件内部,如何保持这种灵活性呢?
关键在于通过Application.Current.Host可以获取到一些必要的信息,请看下面的例子
BasicHttpBinding binding = new BasicHttpBinding(Application.Current.Host.Source.Scheme.Equals("https", StringComparison.InvariantCultureIgnoreCase)? BasicHttpSecurityMode.Transport :
BasicHttpSecurityMode.None);
binding.MaxReceivedMessageSize = int.MaxValue; binding.MaxBufferSize = int.MaxValue; return new ProductServiceClient(binding,
new EndpointAddress(new Uri(Application.Current.Host.Source, "../ProductService.svc")));

浙公网安备 33010602011771号