2010-03-14 32 views
2

我有一个WCF服务,返回大量的数据。我想压缩这些信息,所以我认为使用BinaryEncoding会很合适。Silverlight - WCF启用二进制编码

目前,我有一个结合建立在我的web.config如下:

<binding name="myCustomBinding" closeTimeout="00:05:00" openTimeout="00:05:00" 
    receiveTimeout="00:05:00" sendTimeout="00:05:00"> 
    <binaryMessageEncoding /> 
    <httpTransport maxReceivedMessageSize="8388608" maxBufferSize="8388608"> 
    <extendedProtectionPolicy policyEnforcement="Never" /> 
    </httpTransport> 
</binding> 

在我ServiceReferences.clientconfig文件,我有以下的绑定设置:

<binding name="CustomBinding_MyService"> 
    <httpTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"> 
    <extendedProtectionPolicy policyEnforcement="Never" /> 
    </httpTransport> 
</binding> 

奇怪的是,这配置将不起作用。只要我从web.config中删除<binaryMessageEncoding />行,一切正常。

我的问题是,我该如何使用二进制消息编码?有什么我需要在我的ServiceReferences.clientconfig中配置?

谢谢

回答

1

你能定义“不行吗”吗?

请注意,客户端和服务器必须同意; Silverlight只有一个扩展点的有限子集,但它似乎支持<binaryMessageEncoding/>source和更多信息) - 所以也许将其添加到客户端?