4
我在自己的網站上遇到Automapper問題,找不到解決方案。 我已經創建了一個名爲AutoMapperProfile類,我想將我的所有地圖自動映射器注入依賴關係
public class AutoMapperProfile: Profile
{
private readonly IConfiguration _mapper;
public AutoMapperProfile(IConfiguration mapper)
{
_mapper = mapper;
}
protected override void Configure()
{
base.Configure();
_mapper.CreateMap<SlideDTO, Slide>();
_mapper.CreateMap<Slide, SlideDTO>();
}
}
對於我使用Ninject DI目的,所以我在NinjectWebCommon添加以下綁定:
kernel.Bind<IMappingEngine>().ToMethod(ctx => Mapper.Engine);
kernel.Bind<IConfigurationProvider>().ToMethod(x => Mapper.Engine.ConfigurationProvider);
控制器看起來是這樣的:
private readonly ISlideRepository slideRepository;
private readonly IMappingEngine mappingEngine;
public HomeController(
ISlideRepository slideRepository,
IMappingEngine mappingEngine)
{
this.slideRepository = slideRepository;
this.mappingEngine = mappingEngine;
}
[HttpGet]
public ActionResult Index()
{
var model = new IndexViewModel();
var slide = slideRepository.GetSlide();
model.Slide = mappingEngine.Map<SlideDTO, Slide>(slide);
return View(model);
}
當我從SlideDTO映射到幻燈片,我得到以下錯誤:
Missing type map configuration or unsupported mapping.
所以我最好的猜測是我沒有正確地進行綁定,以便Automapper可以看到我的地圖,但我不確定我該如何解決它。