因为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")));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。