AutoMapper - 获取错误:映射记录类型时缺少类型映射配置或不受支持的映射

问题描述 投票:0回答:1

我进行了很多搜索,但没有解决我的问题。实际上,我想使用 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);
c# .net asp.net-core automapper record
1个回答
1
投票

异常信息非常清楚。您需要映射规则来从

TadaLegalEmployerDto
映射到
TadaLegalEmployerModel

public GetLegalEmployerResponseDtoToGetLegalEmployerResponseModel()
{
    CreateMap<TadaGetLegalEmployerResponseDto, TadaGetLegalEmployerResponseModel>();

    CreateMap<TadaLegalEmployerDto, TadaLegalEmployerModel>();

    CreateMap<TadaCentralOfficeDto, TadaCentralOfficeModel>();
}
© www.soinside.com 2019 - 2024. All rights reserved.