如何使用 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
在之前的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