在Automapper中更新目标属性

问题描述 投票:1回答:1

我在Source类中有2个属性,需要在Destination类中进行组合和更新。

我在下面尝试过,我将目标命名空间作为值,而不是实际值。

//码

    CreateMap<Source, Destination>().ForMember(x => x.Name, opt => opt.MapFrom(y => new Destination { Name = y.FirstName + y.LastName }));

我需要来源的FirstNameLastName属性合并并设置为Destiantion类中的Name属性。

我哪里错了?

c# entity-framework automapper
1个回答
3
投票

ForMember调用中,x的类型为Destinationy的类型为Source(这就是为什么它们通常被命名为dstsrc)。目标成员由第一个表达式(x.Name)提供,因此在MapFrom中,您只需要提供要分配给该成员的源表达式:

CreateMap<Source, Destination>()
    .ForMember(dst => dst.Name, opt => opt.MapFrom(src => src.FirstName + src.LastName));
© www.soinside.com 2019 - 2024. All rights reserved.