我遇到了Automapper問題。我的映射表調用看起來像:Automapper將列表與列表映射到列表
var dataContracts = MapperManager.Mapper.Map<List<Employee>, List<EmployeeDTO>>(entities.ToList());
實體是IQueryable<Employee>
在我的映射器的輔助類,我有:
public class MapperManager
{
public static MapperConfiguration MapperConfiguration { get; set; }
private static IMapper _mapper { get; set; }
public static IMapper Mapper
{
get
{
if (_mapper == null) {
_mapper = MapperConfiguration.CreateMapper();
}
return _mapper;
}
}
public static void RegisterMappinngs()
{
MapperConfiguration = new MapperConfiguration(cfg =>
{
...
cfg.CreateMap<Employee, EmployeeDTO>().MaxDepth(5);
...
}
}
}
RegisterMappings上AppStartup調用一次在Global.asax中 和我後地圖操作中的例外情況:
var dataContracts = MapperManager.Mapper.Map<List<Employee>, List<EmployeeDTO>>(entities.ToList());
錯誤映射類型。
映射類型: List`1 - > List`1 System.Collections.Generic.List`1 [[NAMESPACE.Employee,ASSEMBLY, 版本= 1.0.0.0,文化=中性公鑰=空]] - > System.Collections.Generic.List`1 [NAMESPACE2.EmployeeDTO,ASSEMBLY2, 版本= 1.0.0.0,文化=中立,公鑰=空]
任何人都可以提供任何想法我什麼做錯了?
問候
您是否可以映射單個Employee - > EmployeeDTO?您的配置可能不完整。如果你調用MapperConfiguration.AssertConfigurationIsValid(),會發生什麼? –