Automapper-条件映射破坏了IncludeMembers配置
创始人
2024-09-23 10:30:59
0

当使用Automapper进行条件映射时,它可能会破坏在包含在映射中的成员配置中定义的映射。在这种情况下,可以使用CreateMapWithOptions方法来传递条件选项,以便正确地映射成员。

例如,假设我们要从“Person”类映射到“PersonViewModel”类,并仅在“Person.Age”大于18岁时包含“FullName”成员。在这种情况下,可以使用以下代码示例来实现:

Mapper.Initialize(cfg => { cfg.CreateMap() .IncludeMembers(pvm => pvm.FirstName, pvm => pvm.LastName) .ForMember(pvm => pvm.FullName, opt => opt.Ignore());

cfg.CreateMap()
    .IncludeMembers(pvm => pvm.Age)
    .ForMember(pvm => pvm.FullName, opt =>
    {
        opt.MapFrom(p => p.FirstName + " " + p.LastName);
        opt.Condition((src, dest, srcMember) => src.Age > 18);
    });

});

在上述代码示例中,我们首先定义了一个映射,该映射包含要映射到目标类型的所有成员。然后,我们定义了一个条件映射,其中我们仅包含当条件为真时才映射到目标类型的成员。

使用这种方法,我们可以在进行条件映射时保留包含在映射中的成员配置设置。

相关内容

热门资讯

9分钟实锤!德州之星辅助(云扑... 9分钟实锤!德州之星辅助(云扑克德州)本来有挂(详细辅助新2025教程);1、这是跨平台的德州之星辅...
七分钟实锤!德州ai机器人(n... 七分钟实锤!德州ai机器人(nzt德州)都是是有挂(详细辅助科技教程)德州ai机器人软件透明挂微扑克...
9分钟实锤!德扑之星猫腻(we... 9分钟实锤!德扑之星猫腻(wepower德州)确实存在有挂(详细辅助可靠教程)1、起透看视 德扑之星...
第3分钟实锤!智星德州菠萝(德... 第3分钟实锤!智星德州菠萝(德州扑克)都是有挂(详细辅助细节揭秘)智星德州菠萝软件透明挂微扑克wpk...
6分钟实锤!德州ai人工智能(... 6分钟实锤!德州ai人工智能(德州wepower)原来真的有挂(详细辅助专业教程)1、德州ai人工智...
九分钟实锤!德州ai辅助软件(... 九分钟实锤!德州ai辅助软件(wepower德州)确实有挂(详细辅助微扑克教程)1、上手简单,内置详...
八分钟实锤!德州AI智能辅助机... 八分钟实锤!德州AI智能辅助机器人(来玩德州app)确实是有挂(详细辅助安装教程)1、八分钟实锤!德...
一分钟实锤!德州之星插件(德州... 一分钟实锤!德州之星插件(德州扑克)本来有挂(详细辅助教你攻略);1、德州之星插件透视辅助简单,德州...
第8分钟实锤!德扑ai智能(手... 第8分钟实锤!德扑ai智能(手机德州)其实存在有挂(详细辅助必赢教程)1、打开软件启动之后找到中间准...
9分钟实锤!德州之星有外挂(德... 9分钟实锤!德州之星有外挂(德扑)真是真的是有挂(详细辅助攻略教程)1、任何德州之星有外挂ai辅助神...