2011-09-14 45 views
1

我們使用ChannelFactory連接到我們的WCF服務。當我打電話給該服務時,我希望Channel工廠觸發另一個事件。就像'OnFunctionCall'。我如何將這樣的事件處理程序添加到ChannelFactory。我有時會衝上去,所以我希望有人能幫忙。來自ChannelFactory的觸發事件

與C#的工作,.NET 3.5 SP1

親切的問候

回答

2

一個可能的解決方案是創建一個終結點行爲並將其連接到工廠端點(見下文)。該行爲會將檢查員添加到工廠創建的渠道(可能是IClientMessageInspectorIParameterInspector),並且只要將消息發送到服務器,檢查員就會觸發OnFunctionCall事件。

var factory = new ChannelFactory<IService>(...); 
factory.Endpoint.Behaviors.Add(new MyInspector()); 

有關消息的更多信息,督察可以看http://blogs.msdn.com/b/carlosfigueira/archive/2011/04/19/wcf-extensibility-message-inspectors.aspx,併爲參數檢查員你可以看看http://blogs.msdn.com/b/carlosfigueira/archive/2011/04/26/wcf-extensibility-iparameterinspector.aspx