繁体   English   中英

如何在Automapper 6.1.1中将模型正确映射到实体?

[英]How to correctly map Model to Entity in Automapper 6.1.1?

我在项目中使用的是automapper,直到今天仍使用旧版本,因此我决定将其更新为最新版本。

在执行我的项目并测试某​​些api时,某些api正常工作(没有关系),但是其他api出现以下错误:

错误映射类型。

映射类型:PaginaModelCadastro-> Pagina Identidade.App.Models.PaginaModelCadastro-> Identidade.Domain.Entities.Pagina

类型映射配置:PaginaModelCadastro-> Pagina Identidade.App.Models.PaginaModelCadastro-> Identidade.Domain.Entities.Pagina属性:IdDominio

以下是所有引用该错误的类和映射:

**自动映射器配置类**

    public static void Configure()
    {
        Mapper.Initialize(map =>
        {
            map.AddProfile<EntityToModelMapping>();
            map.AddProfile<ModelToEntityMapping>();
        });
    }

从模型到实体的映射

        CreateMap<PaginaModelCadastro, Pagina>()
        .ForMember(dest => dest.IdDominio, src => src.MapFrom(m => new Dominio() { IdDominio = m.IdDominio }));

类:多米尼奥

public class Dominio
{
    public virtual int IdDominio { get; set; }
    public virtual string Descricao { get; set; }

    public virtual ICollection<Pagina> Paginas { get; set; }
}

类:Pagina

public class Pagina
{
    public virtual int IdPagina { get; set; }
    public virtual string Descricao { get; set; }
    public virtual int IdDominio { get; set; }

    public virtual Dominio Dominio { get; set; }
    public virtual ICollection<Permissao> Permissoes { get; set; }
}

无法在IdDominio和Dominio之间进行映射。 您必须删除该ForMember。 也许你是说

    CreateMap<PaginaModelCadastro, Pagina>()
    .ForMember(dest => dest.Dominio, src => src.MapFrom(m => new Dominio() { IdDominio = m.IdDominio }));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM