【发布时间】:2021-11-10 20:41:20
【问题描述】:
我正在使用静态类来映射我的实体。但是如果我使用下面的代码,它就不能用于转换列表和嵌套实体;
public static class MapperUtil<TSource, TDestination>
{
private static readonly Mapper _mapper = new Mapper(new MapperConfiguration(
cfg =>
{
cfg.CreateMap<TDestination,TSource>().ReverseMap();
}));
public static TDestination Map(TSource source)
{
return _mapper.Map<TSource,TDestination>(source);
}
}
但如果我使用下面的代码,它会很好地工作。
var mapper = new Mapper(new MapperConfiguration(cfg =>
{
cfg.CreateMap<List<User>, List<UserDto>>().ReverseMap();
}));
List<UserDto> userDto = mapper.Map<List<User>,List<UserDto>> (users);
谁能帮助我? (我是新手)。 使用静态类进行映射是个好主意吗?您将映射为静态类的解决方案是什么?
【问题讨论】:
-
两个代码块略有不同。您可以尝试将
cfg.CreateMap<TDestination,TSource>().ReverseMap();更改为cfg.CreateMap<TSource,TDestination>().ReverseMap(); -
@serdar 我认为 .ReverseMap();正在做。不工作。
标签: c# .net asp.net-core .net-core automapper