2010-05-13 81 views
1

我有一個silverlight應用程序,就像用戶定義的小部件將調用wcf服務的門戶網站。由於這些組件可能相當健談,我想劫持服務調用並讓它們通過一個單一的客戶端代理進行流動,從而可以節流,可能緩存結果等。是否可以在Silverlight客戶端中聚合wcf調用?

所以這個想法將是在客戶端代理只需調用另一個客戶端代理(主服務器)而不是通過網絡。至少我認爲這就是我想要的。主服務器會自行決定返回一個asyncresult併爲請求提供服務,或者返回一些緩存的數據。

在silverlight中是否存在類似這樣的適當的wcf擴展點?是否可以在不使用運行時代碼生成/編譯的情況下完成此操作?我是一個WCF n00b,所以任何幫助將不勝感激。

回答

0

我不認爲有可能像您所描述的那樣劫持服務調用。在等待收集呼叫時,您可能會遇到線程問題。

有什麼可行的,如果你有一個過程,詢問每個widgit是否有任何要調用的調用,收集所有相關信息,對服務器進行一次調用,然後用結果更新widgits。

我懷疑這個opimisation是更多的工作比它的價值。來自Silverlight的WCF調用是異步的。

Silverlight WCF Proxy async only?

+0

如果我願意爲此解決方案提供編譯時組件,該怎麼辦?在我們的胖客戶端應用程序中,我們實現了類似於在運行時使用codedom描述的內容。這對Silverlight來說不是一個真正的選擇,但是也許有一種我可以使用的編碼習慣?當然,我可以修改所有已知的服務代理至少使用它。只是頭腦風暴。 – mattx 2010-05-13 17:38:31

相關問題