0

Ninject を使用して WCF クライアントをローカル環境に挿入し、正常に動作しています。これは私がそれを実装した方法です:

private static IKernel CreateKernel()
    {
        var kernel = new StandardKernel();

        kernel.Bind<Func<IKernel>>().ToMethod(ctx => () => new Bootstrapper().Kernel);

        kernel.Bind<IHttpModule>().To<HttpApplicationInitializationHttpModule>();

        RegisterServices(kernel);
        return kernel;
    }

私のRegisterServices(kernel)方法では、次の実装があります。

private static void RegisterServices(IKernel kernel)
    {
    #if DEBUG
        kernel.Bind<MyWCFClient.IMyWCF>().To<MyWCFClient.MyWCFClient>();

    #elif Test_at_server            
        kernel.Bind<MyWCFClient.IMyWCF>().To<MyWCFClient.MyWCFClient>()
              /*.WithConstructorArgument("UserName", Credentials.UserName.UserName = "user")
              .WithConstructorArgument("Password", Credentials.UserName.Password = "password")*/;
    #endif
    }

私がやろうとしているのは、サーバーに Web アプリケーションをデプロイするときに、サーバーの WCF を認証する必要があるため、ninject は WCf に資格情報を挿入する必要があるということです。

4

1 に答える 1