В моем сервисе следующие две реализации возвращают один и тот же результат:
Код: Выделить всё
public TestRepository(
Context context,
ILogger logger)
{
_context = context;
_logger = logger;
}
public async Task GetAsync(int id)
{
Result? res = await _context.Result
.FirstOrDefaultAsync();
return res.Adapt();
}
Код: Выделить всё
public TestRepository(
Context context,
IMapper mapper,
ILogger logger)
{
_context = context;
_mapper = mapper;
_logger = logger;
}
public async Task GetAsync(int id)
{
Result? res = await _context.Result
.FirstOrDefaultAsync();
return _mapper.Map(res);
}
Если я определяю пользовательские сопоставления с использованием пользовательского IRegister, необходимо ли мне использовать IMapper для применения этих сопоставлений, или вызов Adapt() также использует сопоставления, определенные в зарегистрированном IRegister?
Другими словами, Adapt() автоматически использует глобальная конфигурация Mapster (включая пользовательские регистры), или такое поведение ограничено IMapper?