Mam problem z wstrzyknięciem AutoMappera do aplikacji ASP.NET MVC 2 przy użyciu programu Ninject. Użyłem postu Jimmy'ego Bogarda pod numerem AutoMapper and StructureMap type Configuration jako przewodnika.Wstrzykiwanie zależności AutoMapper za pomocą Ninject
public class AutoMapperModule : NinjectModule
{
public override void Load()
{
Bind<ITypeMapFactory>().To<TypeMapFactory>();
Bind<Configuration>().ToSelf().InSingletonScope().WithConstructorArgument("mapper", MapperRegistry.AllMappers);
Bind<IConfiguration>().To<Configuration>();
Bind<IConfigurationProvider>().To<Configuration>();
Bind<IMappingEngine>().To<MappingEngine>();
}
}
Firma Ninject zgłasza wyjątek podczas rozwiązywania Configuration
.
Błąd aktywacji IObjectMapper Brak dostępnych powiązań, a typ nie jest samozłączalny. ścieżka Aktywacja:
3) Wstrzykiwanie zależności IObjectMapper do mappers parametrów konstruktora typu konfiguracji
Aktualizacja
ten pracuje obecnie przy użyciu następującej Oprawa:
Bind<ITypeMapFactory>().To<TypeMapFactory>();
Bind<Configuration>().ToConstant(new Configuration(Kernel.Get<ITypeMapFactory>(), MapperRegistry.AllMappers())).InSingletonScope();
Bind<IConfiguration>().ToMethod(c => c.Kernel.Get<Configuration>());
Bind<IConfigurationProvider>().ToMethod(c => c.Kernel.Get<Configuration>());
Bind<IMappingEngine>().To<MappingEngine>();
I opublikował moduł na GitHub. AutoMapper.Ninject. Więcej informacji na moim blogu: http://binaryspeakeasy.com/2010/09/automapper-ninject/
Zobacz także http://stackoverflow.com/a/1810728/11635 –