微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Silverlight中添加压缩到WCF最简单的方法是什么?

我有一个Silverlight 2 beta 2应用程序访问WCF Web服务。因此,目前只能使用basicHttp绑定。 Web服务将返回相当大量的XML数据。从带宽使用的角度来看,这似乎是相当浪费的,因为如果压缩,响应将小于5(实际上将响应粘贴到txt文件并压缩它)。

请求确实有“Accept-Encoding:gzip,deflate” – 有没有什么方法可以使用WCF服务gzip(或以其他方式压缩)响应?

我确实发现了这个link,但是对于应该是开箱即用的IMHO处理的功能来说似乎有点复杂。

OK – 首先,我使用System.IO.Compression作为答案标记解决方案,因为我似乎无法让IIS7动态压缩工作。那么事实证明:

> IIS7上的动态压缩正在进行中。只是Nikhil的Web开发者助手插件IE没有显示它的工作。我的猜测是,由于SL将Web服务调用到浏览器,浏览器会将其“处理”,Nikhil的工具就不会看到压缩的响应。我可以通过使用fiddler来监测浏览器应用程序外部的流量来确认。在提琴手中,反应实际上是gzip压缩的!
> System.IO.Compression解决方案的另一个问题是Silverlight CLR中不存在System.IO.Compression。

所以从我的角度来看,在Silverlight中启用WCF压缩的EASIEST方法是在IIS7中启用动态压缩,并且根本不写代码

解决方法

如果您使用的是IIS7,请查看 Compression Module.这样可以为您的服务器配置HTTP请求的压缩。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐