【发布时间】:2017-09-28 09:46:06
【问题描述】:
我正在使用自动映射器 6.1,我想将一些值从一个对象映射到另一个对象,但有一个条件是这些值不能为空,并且如果我可以轻松使用,则并非所有对象属性都应该被映射ForAllMembers 条件。我想做的是:
config.CreateMap<ClassA, ClassB>()
.ForMember(x => x.Branch, opt => opt.Condition(src => src.Branch != null),
cd => cd.MapFrom(map => map.Branch ?? x.Branch))
也试过了
config.CreateMap<ClassA, ClassB>().ForMember(x => x.Branch, cd => {
cd.Condition(map => map.Branch != null);
cd.MapFrom(map => map.Branch);
})
换句话说,对于我在自动映射器配置中定义的每个属性,我想检查它是否为空,如果它为空,则从 x 中离开值。
调用此类自动映射器配置如下所示:
ClassA platform = Mapper.Map<ClassA>(classB);
【问题讨论】:
标签: c# automapper-6