Silverlight:如何在使用WCF的时候动态指定服务地址

本文介绍如何使用Silverlight实现与WCF服务的灵活交互,通过动态获取当前应用程序的主机信息来构造WCF服务的地址,确保跨网站部署时服务地址的正确性和灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为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")));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值