5

IErrorHandler の実装を WCF サービスにインストールしたいと考えています。

私は現在、何もしないように見えるこのコードを使用しています:

logServiceHost = new ServiceHost(typeof(Logger));
logServiceHost.AddServiceEndpoint(typeof(ILogger), binding, address);

// Implementation of IErrorHandler.
var errorHandler = new ServiceErrorHandler();

logServiceHost.Open();

// Add error handler to all channel dispatchers.
foreach (ChannelDispatcher dispatcher in logServiceHost.ChannelDispatchers)
{
    dispatcher.ErrorHandlers.Add(errorHandler);
}

私が見たすべてのコード例 (WCF に使用している本を含む) は、カスタム作成されたIServiceBehaviorを使用してエラー拡張機能をインストールする方法を示しています。これは必須ですか、それとも私のアプローチもうまくいくはずですか?

4

3 に答える 3

0

この記事によると、 IErrorHandler インスタンスはビヘイビアを介して追加されます。あなたの例のような他のメカニズムについては言及されていません。

于 2012-08-22T23:31:05.847 に答える