AutoMapper:当从两个不同的源成员映射到同一目标成员时,第二个源成员不进行映射。
创始人
2024-09-23 16:31:43
0

在AutoMapper中,可以使用“MapFrom”方法来解决此问题。例如,在以下示例中,我们要从EmployeeDTO的“Name”和“Surname”属性中映射到Employee的“Name”属性。但是,我们想要在名称中包含姓氏,因此我们需要将两个属性的值结合起来。使用“MapFrom”方法,我们可以指定自定义映射规则,以便将两个属性映射到同一个目标属性。在映射选项中,我们使用“MapFrom”方法来指定规则。

public class EmployeeDTO
{
    public string Name { get; set; }
    public string Surname { get; set; }
}

public class Employee
{
    public string Name { get; set; }
}

// 配置映射选项,使用MapFrom方法来自定义映射规则
var config = new MapperConfiguration(cfg => {
    cfg.CreateMap()
        .ForMember(dest => dest.Name, opt => opt.MapFrom(src => $"{src.Name} {src.Surname}"))
        .ReverseMap();
});

// 使用AutoMapper进行映射
var mapper = new Mapper(config);
var employeeDto = new EmployeeDTO { Name = "John", Surname = "Doe" };
var employee = mapper.Map(employeeDto);

在上面的代码中,我们指定了当映射到Employee的Name属性时,从EmployeeDTO的Name和Surname属性中获取值,以便将姓名和姓氏组合到同一个字符串中。这样,即使在两个不同的源成员中都有相同的目标成员,我们也可以确保正确地映射每个源成员。

相关内容

热门资讯

科技分享!微乐自建房辅助工具脚... 科技分享!微乐自建房辅助工具脚本,微乐家乡麻将自建房辅助app(开挂自建房)脚本微乐家乡麻将自建房辅...
普及知识!微信雀神麻将挂件开挂... 普及知识!微信雀神麻将挂件开挂辅助,微乐自建房脚本免费入口(开挂自建房)插件1、操作简单,无需微信雀...
一分钟揭秘!微乐家乡麻将自建房... 一分钟揭秘!微乐家乡麻将自建房辅助app,微乐自建房脚本免费入口(开挂自建房)脚本1、打开软件启动之...
热门推荐!微乐家乡麻将自建房辅... 热门推荐!微乐家乡麻将自建房辅助app,微乐家乡麻将自建房辅助app(开挂自建房)攻略1、微乐家乡麻...
发现一款!微乐自建房辅助工具,... 发现一款!微乐自建房辅助工具,微乐小程序免费黑科技(开挂自建房)软件1、全新机制【微乐自建房辅助工具...
揭秘一下!微乐家乡麻将自建房辅... 揭秘一下!微乐家乡麻将自建房辅助app,微乐自建房脚本免费入口(开挂自建房)攻略在进入微乐家乡麻将自...
分享给玩家!微乐自建房辅助工具... 分享给玩家!微乐自建房辅助工具挂,微乐小程序免费黑科技(开挂自建房)教程1、下载好微乐自建房辅助工具...
实测揭晓!微乐家乡麻将自建房辅... 实测揭晓!微乐家乡麻将自建房辅助app,微乐家乡麻将自建房辅助app(开挂自建房)插件1、进入游戏-...
终于知道!微信卡五星辅助器,微... 终于知道!微信卡五星辅助器,微乐小程序免费黑科技(开挂自建房)插件1、完成微信卡五星辅助器有辅助插件...
今日百科!微乐自建房辅助工具插... 今日百科!微乐自建房辅助工具插件,微乐自建房脚本免费入口(开挂自建房)工具1、微乐自建房辅助工具插件...