Я обновляю мой проект для использования AutoMapper 4.2, и у меня возникают нарушения. Хотя я, кажется, решил изменения, я не совсем уверен, что сделал это наиболее подходящим образом.
В старом коде у меня есть класс NinjectConfiguration
и AutoMapperConfiguration
, каждый из которых загружается WebActivator. В новой версии AutoMapperConfiguration
выпадает, и вместо этого я использую экземпляр MapperConfiguration
непосредственно в классе NinjectConfiguration
, где происходят привязки:
private static void RegisterServices(
IKernel kernel) {
var profiles = AssemblyHelper.GetTypesInheriting<Profile>(Assembly.Load("???.Mappings")).Select(Activator.CreateInstance).Cast<Profile>();
var config = new MapperConfiguration(
c => {
foreach (var profile in profiles) {
c.AddProfile(profile);
}
});
kernel.Bind<MapperConfiguration>().ToMethod(
c =>
config).InSingletonScope();
kernel.Bind<IMapper>().ToMethod(
c =>
config.CreateMapper()).InRequestScope();
RegisterModules(kernel);
}
Итак, является ли это подходящим способом привязки AutoMapper 4.2 с помощью Ninject? Кажется, он работает до сих пор, но я просто хочу убедиться.