0

UnknownMessageReceivedIISでホストされているWCFアプリケーションがある場合、イベントを処理するにはどうすればよい ですか?

私はコンソールホストを構築するときにそれを行う方法を知っています。

4

1 に答える 1

0

サービスホストファクトリを使用して、IISで使用されるサービスホストインスタンスにアクセスできます。サービスホストファクトリの詳細については、http://blogs.msdn.com/b/carlosfigueira/archive/2011/06/14/wcf-extensibility-servicehostfactory.aspxを参照してください。以下のコードは、ファクトリの例を示しています。イベントをリッスンしUnknownMessageReceivedます。

public class MyFactory : ServiceHostFactory
{
    protected override ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses)
    {
        ServiceHost host = base.CreateServiceHost(serviceType, baseAddresses);
        host.UnknownMessageReceived += new EventHandler<UnknownMessageReceivedEventArgs>(host_UnknownMessageReceived);
        return host;
    }

    void host_UnknownMessageReceived(object sender, UnknownMessageReceivedEventArgs e)
    {
        // do something with the message
    }
}
于 2012-07-09T20:55:00.097 に答える