AutoMapper 仅在目标字段为空时映射
AutoMapper only map when target field is null
AutoMappper 中是否有任何选项仅在目标字段为空时映射属性。即仅映射尚未设置的属性?
我希望这样做而不必为每个人写一个表达式 属性。
如有任何帮助,我们将不胜感激。
马特
请尝试以下解决方案:
Mapper.CreateMap<TypeA, TypeB>().ForAllMembers(r=>r.Condition(v=>v.DestinationValue==null));
希望对您有所帮助
Conditional mapping 将帮助您实现这一目标。
PinHead877 的回答确实指向我非常接近,但实际答案更像是这样:
cfg.CreateMap<TypeA, TypeB>() .ForAllMembers(r => r.Condition((source, target, sourceField, targetField) => targetField == null));
AutoMappper 中是否有任何选项仅在目标字段为空时映射属性。即仅映射尚未设置的属性?
我希望这样做而不必为每个人写一个表达式 属性。
如有任何帮助,我们将不胜感激。
马特
请尝试以下解决方案:
Mapper.CreateMap<TypeA, TypeB>().ForAllMembers(r=>r.Condition(v=>v.DestinationValue==null));
希望对您有所帮助
Conditional mapping 将帮助您实现这一目标。
PinHead877 的回答确实指向我非常接近,但实际答案更像是这样:
cfg.CreateMap<TypeA, TypeB>() .ForAllMembers(r => r.Condition((source, target, sourceField, targetField) => targetField == null));