2009-02-20 40 views
1

我有一個由WCF節點組成的N層結構。我需要偶爾將非常大量的數據從終端節點傳遞到頂級節點,並且我希望避免在中間跳躍期間對非常大的數據字段進行反序列化。由於我們的策略失敗,我無法直接進入頂端。有什麼辦法可以避免反序列化我的領域?感謝您的任何幫助WCF傳遞

回答

2

也許你可以做一些[OnDeserializing]事件?

請參閱this

此外,Juval Lowy在第3章第107-110頁的「Programming WCF Services」(第二版)中介紹了序列化事件。

我不確定你是否可以完全短路反序列化雖然...我從來沒有嘗試過。

1

我覺得特里在正確的軌道上。我會查看該事件,並通過使用消息合約,您應該能夠標記您想要通過的消息部分。您可能需要執行一些消息操作(拆開傳入的消息,創建一個「自定義」傳出消息),但您應該能夠繼續查看消息而不被查看。

做一個搜索WS-Addressing;它可能會爲此提供一種模式。

0

我想知道您的故障轉移策略是否適合「捕捉鏈接」這類事情。您將對中間節點進行初始呼叫,最終將其轉發給終端節點。終端節點將響應初始節點直接連接所需的信息。

通過這種方式,負載平衡或故障轉移可以確定應使用哪個終端節點,但在確定之後,可能會發生直接連接。當然,您希望限制直接連接的持續時間以允許故障轉移策略隨着時間的推移而改變主意。