Automapper中是否有规定在映射时忽略某些属性。例如,我有两个类Manager和Employee。经理有一份员工和其他信息清单。
我大多数时候都需要员工列表,但在少数情况下,我不需要将员工列表返回给客户端(比如在编辑经理名称时)。所以,当我创建地图时,我也将Employees包括在内。现在有一种方法可以指定在映射时忽略的employees属性。
// <--- Employees is included.
Mapper.CreateMap<Manager, ManagerDto>();
// <--- I want to ignore employees list here.
ManagerDto dto = Mapper.Map<Manager, ManagerDto>(manager);
答案 0 :(得分:1)
您可以在映射配置中使用条件。例如:
Mapper.CreateMap<Manager, ManagerDto>()
.ForMember(d => d.Employees,
opt => {
opt.Condition(s => s.NeedEmployees);
opt.MapFrom(s => s.Employees);
});
我不相信你在实际应用映射时可以做到这一点。