如何使用 AutoMapper 的新 API 映射到现有实例?

How do I map to existing instances using AutoMapper's new API?

在之前的API中我可以做到:

AutoMapper.Mapper.Map(sourceObject, destinationObject);

但是,最近的呢? (AutoMapper 4.2+)

配置:

public class MyProfile : AutoMapper.Profile
{
    protected override void Configure()
    {
        CreateMap<SourceClass, DestClass>();
    }
}

class

的构造函数(例如,或代码中的其他位置)
        var config = new MapperConfiguration(cfg => cfg.AddProfile<MyProfile>());
        mapper = config.CreateMapper();

或简单:

var config = new MapperConfiguration(cfg => {
    cfg.CreateMap<SourceClass, DestClass>();
});

(但使用配置文件,您可以在不同的地方重复使用此代码)

使用

        DestClass destObject = mapper.Map<DestClass>(sourceObject);

看看https://github.com/AutoMapper/AutoMapper/wiki/Configuration