Ich habe Probleme beim Einfügen von AutoMapper in eine ASP.NET MVC 2-Anwendung mit Ninject. Ich habe Jimmy Bogards Beitrag auf AutoMapper and StructureMap type Configuration als Leitfaden verwendet.Injection AutoMapper Abhängigkeiten mit 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>();
}
}
Ninject löst eine Ausnahme aus, wenn Configuration
aufgelöst wird.
Fehler beim Aktivieren von IObjectMapper Keine passenden Bindungen sind verfügbar, und der Typ ist nicht selbstbindbar. Aktivierungspfad:
3) Injektion von Abhängigkeits IObjectMapper in den Parameter Mapper der Konstruktor des Typs Konfiguration
aktualisieren
Dieser arbeitet nun mit der folgenden Bindung:
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 veröffentlichte das Modul auf GitHub. AutoMapper.Ninject. Weitere Informationen auf meinem Blog: http://binaryspeakeasy.com/2010/09/automapper-ninject/
Siehe auch http://stackoverflow.com/a/1810728/11635 –