我进行了很多搜索,但没有解决我的问题。实际上,我想使用 AutoMapper 来映射具有相同参数的两个
record
类型,但出现以下错误:
缺少类型映射配置或不受支持的映射。
映射类型: TadaLegalEmployerDto -> TadaLegalEmployerModel EmployeeAndEmployer.Api.Models.TadaDtos.TadaLegalEmployerDto -> EmployeeAndEmployer.Api.Application.Queries.GetTadaLegalEmployer.TadaLegalEmployerModel
目的地会员: 合法雇主
来源:
public record TadaGetLegalEmployerResponseDto(string data,
TadaLegalEmployerDto LegalEmployer, string Starter);
public record TadaLegalEmployerDto(string SNationalId,
string SRegistrationNumber, TadaCentralOfficeDto CentralOffice);
public record TadaCentralOfficeDto(string Province);
目的地:
public record TadaGetLegalEmployerResponseModel(string data,
TadaLegalEmployerModel LegalEmployer,string Starter);
public record TadaLegalEmployerModel(string SNationalId,
string SRegistrationNumber, TadaCentralOfficeModel CentralOffice);
public record TadaCentralOfficeModel(string Province);
映射类:
public class GetLegalEmployerResponseDtoToGetLegalEmployerResponseModel : Profile
{
public GetLegalEmployerResponseDtoToGetLegalEmployerResponseModel()
{
CreateMap<TadaGetLegalEmployerResponseDto, TadaGetLegalEmployerResponseModel>();
}
}
在我的处理程序中,我有:
var dto = await _myService.GetLegalEmployersAsync();
var resultModel = _mapper.Map<TadaGetLegalEmployerResponseModel>(dto);
异常信息非常清楚。您需要映射规则来从
TadaLegalEmployerDto
映射到 TadaLegalEmployerModel
。
public GetLegalEmployerResponseDtoToGetLegalEmployerResponseModel()
{
CreateMap<TadaGetLegalEmployerResponseDto, TadaGetLegalEmployerResponseModel>();
CreateMap<TadaLegalEmployerDto, TadaLegalEmployerModel>();
CreateMap<TadaCentralOfficeDto, TadaCentralOfficeModel>();
}