2012-06-26 78 views
0

是否可以在沒有來自客戶端的請求的情況下將事件從服務激發給連接的客戶端? (我知道,如果我使用客戶端請求,我可以使用回調)WCF服務本身觸發事件

我將對象存儲在具有某種實際狀態的服務中。這個對象的狀態可以經常改變。 第一種方法:我可以每秒向這項服務發送請求,但我想他們是更好的方法。

我想過由wcfservice本身調用的事件 - 可能嗎?

+2

看看這個問題:http://stackoverflow.com/q/1006058/941243 – Chris

回答

2

那麼在WCF中有回調,我猜你在問什麼。 http://msdn.microsoft.com/en-us/magazine/cc163537.aspx

+0

它不是回撥嗎?在這種情況下,不存在CALL – Saint

+0

@Saint,您可能會將字面上的「回調」名稱帶過來。只要您保留一批用戶(即您的客戶),即使沒有他們發起呼叫,您也可以隨時撥打電話。這是您處理異步服務的一種方式。你可以強迫你的客戶「啓動」一個會話(http://www.remondo.net/managing-wcf-session-lifetime-isinitiating-isterminating/),這樣你可以使用一種方法來保持添加訂閱者來自一個集合。然後,只要您想要廣播,只需遍歷該訂閱者集合即可。 – Thelonias