Как настроить Ninject для работы с ServiceStack.net

Пытаясь настроить ServiceStack.net на использование Ninject в качестве IOC, я получаю ошибки, относящиеся к тому, что различные привязки не определены. В первую очередь для клиента ICache.

Какие конкретные привязки необходимо создать для правильного использования Ninject?

В настоящее время указано:

Bind().To();//Is this correct/needed?

Примечание

Я создал IContainerAdapter в соответствии с документацией ServiceStack для реализации использования Ninject. (Найдено здесь: ServiceStack IOC Docs )

Примечание 2 Мой метод настройки хоста приложения выглядит следующим образом:

public override void Configure(Funq.Container container)
{
        IKernel kernel = new StandardKernel(new BindingModule());
        container.Adapter = new NinjectContainerAdapter(kernel);
}

Примечание 3

Я зарегистрировал ICacheClient следующим образом: Bind (). To ();

И теперь я получаю сообщение об ошибке, указывающее на IRequest

Error activating IRequestLogger\nNo matching bindings are available, and the type is not self-bindable

Адаптер контейнера

public class NinjectContainerAdapter : IContainerAdapter
{
    private readonly IKernel _kernel;

    public NinjectContainerAdapter(IKernel kernel)
    {
        this._kernel = kernel;
    }

    public T TryResolve()
    {
        return this._kernel.Get();
    }

    public T Resolve()
    {
        return this._kernel.Get();
    }
}

7
задан stephen776 1 March 2012 в 17:49
поделиться