我们通常有一个用例,就是我们的集合中包含一个null元素(new SomeType[]{null}
)。现在,我们有一个扩展方法可以删除这些null元素,但是显然我们必须为要映射的每个集合配置它。
是否存在一些通用的方法来告诉automapper从全局或每个配置文件中删除集合中的空值?
答案 0 :(得分:1)
AotoMapper提供了Condition映射
例如,
CreateMap<MyClassDTO, MyClass>()
.ForAllMembers(opts => opts.Condition((src, dest, srcMember) => srcMember != null));
在全局级别上启用(未测试)
Mapper.Initialize(cfg =>
{
cfg.ForAllMaps((typeMap, map) =>
map.ForAllMembers(opts => opts.Condition((src, dest, srcMember) => srcMember != null));
}