Automapper (4.2.1) 抛出异常 "missing map..." 即使地图是在上面的行中创建的
Automapper (4.2.1) throwing an exception "missing map..." even though the map is created on the line above
我一直在尝试升级到 Automapper 4,但没有成功。这会抛出一个异常,即映射丢失而它不是
var configuration = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Journal, JournalDTO>();
cfg.CreateMap<JournalDTO, Journal>();
});
var mapper = configuration.CreateMapper();
var journals = mapper.Map<ObservableCollection<Journal>>(context.Journal.AsNoTracking().ProjectTo<JournalDTO>());
我原来的工作代码是这样的
Mapper.CreateMap<Journal, JournalDTO>().ReverseMap();
var journals = Mapper.Map<ObservableCollection<Journal>>
(context.Journal.AsNoTracking().ProjectTo<JournalDTO>());
没看出来是什么问题,我跟着this
感谢您的关注
您正在混合使用静态和非静态 API,您需要选择其中之一。混合的部分是 ProjectTo,非静态版本将 MapperConfiguration 作为参数。
var journals = mapper.Map<ObservableCollection<Journal>>(context.Journal.AsNoTracking().ProjectTo<JournalDTO>(configuration));
仍然支持静态 API,但如果您想走那条路,您只需要使用 Mapper.Initialize。
我一直在尝试升级到 Automapper 4,但没有成功。这会抛出一个异常,即映射丢失而它不是
var configuration = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Journal, JournalDTO>();
cfg.CreateMap<JournalDTO, Journal>();
});
var mapper = configuration.CreateMapper();
var journals = mapper.Map<ObservableCollection<Journal>>(context.Journal.AsNoTracking().ProjectTo<JournalDTO>());
我原来的工作代码是这样的
Mapper.CreateMap<Journal, JournalDTO>().ReverseMap();
var journals = Mapper.Map<ObservableCollection<Journal>>
(context.Journal.AsNoTracking().ProjectTo<JournalDTO>());
没看出来是什么问题,我跟着this
感谢您的关注
您正在混合使用静态和非静态 API,您需要选择其中之一。混合的部分是 ProjectTo,非静态版本将 MapperConfiguration 作为参数。
var journals = mapper.Map<ObservableCollection<Journal>>(context.Journal.AsNoTracking().ProjectTo<JournalDTO>(configuration));
仍然支持静态 API,但如果您想走那条路,您只需要使用 Mapper.Initialize。