2011-12-27 59 views

回答

0

如果您想更改消息編碼,您需要定義一個綁定配置 - 選擇您正在使用的綁定,並定義您想要的,例如, MTOM編碼:

<bindings> 
    <wsHttpBinding> 
    <binding name="MTOM" messageEncoding="Mtom" /> 
    </wsHttpBinding> 
</bindings> 

然後,在你的終端服務器和客戶端(他們必須排隊定義同樣的事情!),你需要使用綁定配置:

<service name="test" > 
    <endpoint name="test" 
     address="" 
     binding="wsHttpBinding" 
     bindingConfiguration="MTOM" 
     contract="IYourService" /> 
    </service> 

您必須在客戶端和服務器上設置此項 - 您需要提前確定是否使用MTOM編碼(而不是常規文本編碼)。

+0

謝謝,但我有一個不同的查詢。在消息被實際解碼之前,我可以知道來自服務器的響應的編碼,以便我可以在客戶端使用與服務器端的響應相同的正確終端。 – 2011-12-27 18:31:13

+0

@klra:我試圖解釋:** no **你不能這樣做 - 當你配置服務什麼編碼將用於什麼端點時,你需要提前決定**。你不能「神奇地」檢測到每條消息 - 它必須被決定和配置。 – 2011-12-27 19:44:20

+0

好的,我們可以在客戶端或服務器端的任何級別上至少確定傳入消息的消息編碼嗎? – 2011-12-28 03:23:11