Инъекция зависимостей AutoMapper с использованием Ninject

У меня возникли проблемы с внедрением AutoMapper в приложение ASP.NET MVC 2 с использованием Ninject. В качестве руководства я использовал сообщение Джимми Богарда о конфигурации типа AutoMapper и StructureMap .

public class AutoMapperModule : NinjectModule
{
    public override void Load()
    {
        Bind().To();
        Bind().ToSelf().InSingletonScope().WithConstructorArgument("mapper", MapperRegistry.AllMappers);
        Bind().To();
        Bind().To();
        Bind().To();
    }
}

Ninject выдает исключение при разрешении конфигурации .

Ошибка при активации IObjectMapper s публикация о конфигурации типа AutoMapper и StructureMap в качестве руководства. открытый класс ...

У меня возникли проблемы с внедрением AutoMapper в приложение ASP.NET MVC 2 с использованием Ninject. В качестве руководства я использовал сообщение Джимми Богарда о конфигурации типа AutoMapper и StructureMap .

public class AutoMapperModule : NinjectModule
{
    public override void Load()
    {
        Bind().To();
        Bind().ToSelf().InSingletonScope().WithConstructorArgument("mapper", MapperRegistry.AllMappers);
        Bind().To();
        Bind().To();
        Bind().To();
    }
}

Ninject выдает исключение при разрешении конфигурации .

Ошибка при активации IObjectMapper s публикация о конфигурации типа AutoMapper и StructureMap в качестве руководства. открытый класс ...

У меня возникли проблемы с внедрением AutoMapper в приложение ASP.NET MVC 2 с использованием Ninject. В качестве руководства я использовал сообщение Джимми Богарда о конфигурации типа AutoMapper и StructureMap .

public class AutoMapperModule : NinjectModule
{
    public override void Load()
    {
        Bind().To();
        Bind().ToSelf().InSingletonScope().WithConstructorArgument("mapper", MapperRegistry.AllMappers);
        Bind().To();
        Bind().To();
        Bind().To();
    }
}

Ninject выдает исключение при разрешении конфигурации .

Ошибка при активации IObjectMapper Соответствующие привязки не доступны, и тип не является самосвязываемым. Путь активации:
3) Внедрение зависимости IObjectMapper в преобразователи параметров конструктора типа Configuration

Update

Теперь это работает с использованием следующей привязки:

    Bind().To();
    Bind().ToConstant(new Configuration(Kernel.Get(), MapperRegistry.AllMappers())).InSingletonScope();
    Bind().ToMethod(c => c.Kernel.Get());
    Bind().ToMethod(c => c.Kernel.Get());
    Bind().To();

Я опубликовал модуль на GitHub. AutoMapper.Ninject . Больше информации в моем блоге: http://binaryspeakeasy.com/2010/09/automapper-ninject/

10
задан Corey Coto 14 September 2010 в 01:40
поделиться