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属性中获取值,以便将姓名和姓氏组合到同一个字符串中。这样,即使在两个不同的源成员中都有相同的目标成员,我们也可以确保正确地映射每个源成员。

相关内容

热门资讯

为切实保障!德普之星的辅助工具... 为切实保障!德普之星的辅助工具介绍(透视)其实确实有挂(讲解有挂开挂辅助安装)-哔哩哔哩1、每一步都...
今天上午!wejoker手机版... 今天上午!wejoker手机版透视脚本,newpoker怎么安装脚本,讲义教程(真是有挂)-哔哩哔哩...
据统计!hhpoker可以开挂... 据统计!hhpoker可以开挂吗(透视)一直真的有挂(有挂详细开挂辅助辅助器)-哔哩哔哩1、上手简单...
刚刚!约局吧德州真的存在透视吗... 刚刚!约局吧德州真的存在透视吗,pokemmo辅助工具,教材教程(今日头条)-哔哩哔哩1、约局吧德州...
据报道!哈糖大菠萝免费辅助器(... 据报道!哈糖大菠萝免费辅助器(透视)原来真的是有挂(有挂教学开挂辅助插件)-哔哩哔哩1、哈糖大菠萝免...
近日!wpk透视辅助下载,we... 近日!wpk透视辅助下载,wepoker透视脚本苹果版,机巧教程(真的有挂)-哔哩哔哩进入游戏-大厅...
来临!竞技联盟辅助(透视)原来... 来临!竞技联盟辅助(透视)原来真的是有挂(确实有挂开挂辅助平台)-哔哩哔哩1)竞技联盟辅助辅助挂:进...
据公告内容!pokemmo脚本... 据公告内容!pokemmo脚本,拱趴大菠萝有什么挂,技法教程(有挂方略)-哔哩哔哩1、拱趴大菠萝有什...
此事迅速冲上热搜!拱趴大菠萝万... 此事迅速冲上热搜!拱趴大菠萝万能挂(透视)一贯真的有挂(有挂分析开挂辅助插件)-哔哩哔哩1、下载好拱...
备受关注的!WePoKer辅助... 备受关注的!WePoKer辅助器,hhpoker有辅助吗,模块教程(确实有挂)-哔哩哔哩1、游戏颠覆...