基于属性名称的AutoMapper条件

本文关键字:AutoMapper 条件 于属性 属性 | 更新日期: 2023-09-27 17:57:33

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

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

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

请注意,当我中断条件委托的实现时,ResolutionContext参数rcInstanceCacheItems都为空。

基于属性名称的AutoMapper条件

AutoMapper不允许全局属性/字段筛选。所以你可以尝试在你的MapperConfiguration:中使用它

var config = new MapperConfiguration(cfg =>
{
    cfg.ShouldMapProperty = pi =>
    {
        return true;
    };
});