在AutoMapper Net Core2中双向映射的语法是什么?我需要地图ProductViewModel
和ProductDto
双向。这不起作用,
启动文件
var config = new MapperConfiguration
(
cfg => cfg.CreateMap<Models.ProductDto, Models.ProductViewModel>(),
cfg => cfg.CreateMap<Models.ProductViewModel, Models.ProductDto>()
);
var mapper = config.CreateMapper();
我宁愿创建一个单独的初始化程序和映射器。例如,这是我的AutoMapperStartupTask
课。
public static class AutoMapperStartupTask
{
public static void Execute()
{
Mapper.Initialize(
cfg =>
{
cfg.CreateMap<ProductViewModel, ProductDto>()
.ReverseMap();
});
}
}
和映射器
public static class DtoMapping
{
public static ProductViewModel ToModel(this ProductDto dto)
{
return Mapper.Map<ProductDto, ProductViewModel>(dto);
}
public static ProductDto ToDto(this ProductViewModel dto)
{
return Mapper.Map<ProductViewModel, ProductDto>(dto);
}
}
启动文件
public void ConfigureServices(IServiceCollection services)
{
AutoMapperStartupTask.Execute();
}
在控制器中使用
var dto = productModel.ToDto();
var model = productDto.ToModel();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句