AutoMapper条件映射问题
创始人
2024-09-23 14:31:17
0
  1. 定义一个条件值转换器,并在AutoMapper配置中指定该转换器。 例如,如果要根据源对象属性值中的长度来判断是否映射目标对象属性,则可以创建以下转换器:

    public class StringLengthCondition : IMappingCondition { public bool IsSatisfied(object source, object destination, ResolutionContext context) { string sourceString = (string)source; if (sourceString.Length > 10) return true; else return false; } }

然后在AutoMapper配置中使用该转换器:

Mapper.Initialize(cfg =>
{
    cfg.CreateMap()
       .ForMember(dest => dest.SomeString, opt => opt.MapFrom(src => src.OtherString))
       .ForMember(dest => dest.SomeInt, opt => opt.Condition(new StringLengthCondition()));
});

上面的代码指定了一个条件,即只有当源对象属性SomeString的长度大于10时,才进行映射。

  1. 使用AutoMapper的条件映射扩展方法。 AutoMapper提供了一些条件映射的扩展方法,可以根据条件来判断是否进行映射,例如

    Mapper.Map(sourceObject, destObject, opt => opt .Condition(src => src.SomeString.Length > 10));

上面的代码指定了一个条件,即只有当源对象属性SomeString的长度大于10时,才进行映射。

相关内容

热门资讯

第4分钟实锤!德州之星插件(德... 第4分钟实锤!德州之星插件(德州nzt)切实有挂(详细辅助普及教程)1、德州之星插件ai辅助优化,德...
8分钟实锤!德扑ai智能机器人... 8分钟实锤!德扑ai智能机器人(智星德州)一直真的是有挂(详细辅助存在挂教程);1、德扑ai智能机器...
第6分钟实锤!智星德州菠萝(德... 第6分钟实锤!智星德州菠萝(德州俱乐部)总是存在有挂(详细辅助解密教程);1、下载好智星德州菠萝辅助...
第1分钟实锤!德扑之星辅助器购... 第1分钟实锤!德扑之星辅助器购买(手机德州)一贯真的是有挂(详细辅助力荐教程)1、德扑之星辅助器购买...
第六分钟实锤!德州免费辅助神器... 第六分钟实锤!德州免费辅助神器app(wepower德州)确实是有挂(详细辅助AI教程);1)德州免...
第七分钟实锤!智星德州菠萝有挂... 第七分钟实锤!智星德州菠萝有挂吗(来玩德州app)好像有挂(详细辅助必赢教程)运智星德州菠萝有挂吗辅...
第三分钟实锤!德扑之星ai代打... 第三分钟实锤!德扑之星ai代打(智星德州)其实存在有挂(详细辅助详细教程)1、上手简单,内置详细流程...
第6分钟实锤!德扑之星ai代打... 第6分钟实锤!德扑之星ai代打(wepower德州)竟然是有挂(详细辅助透明教程);亲,关键说明,德...
6分钟实锤!智星德州菠萝(德扑... 6分钟实锤!智星德州菠萝(德扑)竟然是有挂(详细辅助大神讲解)小薇(透视辅助)致您一封信;亲爱智星德...
第二分钟实锤!智星德州菠萝偷偷... 第二分钟实锤!智星德州菠萝偷偷看牌功能(来玩德州app)真是是真的有挂(详细辅助可靠教程)1、下载好...