2

Ninject wcf 拡張機能を使用するのは困難です。IIS でサービスをホストし、svc ファイルを使用します。NinjectServiceHostFactory(svc ファイル内) とNinjectHttpApplication(ファイル内)の使用法を説明する多くの投稿を読みましたが、global.asax非常に単純に思えます。私たちの問題は、すでにカスタムServiceHostFactoryとがあることServiceHostです。

誰かが私たちServiceHostFactoryとを組み合わせる正しい方法を教えてもらえますかNinjectServiceHostFactory?

私たちの svc ファイルは、カスタムServiceHostFactory.

アップデート

なんとか実装できたようです。ServiceHostFactory の実装:

public class CustomServiceHostFactory : NinjectServiceHostFactory
{
    protected override Type ServiceHostType
    {
        get
        {
            return typeof(CustomServiceHost<>);
        }
    }
}

ServiceHost の実装:

public class CustomServiceHost<T> : NinjectAbstractServiceHost<T>
{
    public CustomServiceHost(IServiceBehavior serviceBehavior, T serviceType, params Uri[] baseAddresses)  : base(serviceBehavior, serviceType, baseAddresses)
    {
        ...
    }

    protected override void OnOpening()
    {
        ...

        base.OnOpening();
    }
}
4

0 に答える 0