AutoMapper基于属性名称的条件

时间:2016-07-17 20:53:27

标签: c# automapper

通过以下映射,我可以根据其值选择性地选择要映射的属性值。

config
  .CreateMap<SourceAddress, DestinationAddress>()
  .ForAllMembers(opt => opt.Condition((s, d, sv, dv, rc) => true));

我如何根据属性元数据(例如应用于它的名称或属性)做出此决定?

请注意,当我打破条件委托的实现时,ResolutionContext参数rc同时为InstanceCacheItems

1 个答案:

答案 0 :(得分:2)

AutoMapper允许Global property/field filtering。因此,您可以尝试在MapperConfiguration

中使用此功能
var config = new MapperConfiguration(cfg =>
{
    cfg.ShouldMapProperty = pi =>
    {
        return true;
    };
});