2010-03-14 74 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和更多信息) - 所以也許將其添加到客戶端?