【发布时间】:2021-03-31 05:45:09
【问题描述】:
我正在尝试将映射应用于导航属性,但出现错误。我有两个包含导航属性一对多的类。
public class Contractor : Entity<string>
{
public virtual Collection<DocsVat> DocsVats { get; set; }
}
public class DocsVat : Entity<Guid>
{
public Contractor Contractor { get; set; }
}
配置是:
public class DocsVatEntityConfiguration : EntityTypeConfigurationBase<DocsVat>
{
protected override void ConfigureEntity()
{
Builder.ToTable("DocsVat", "VAT");
Builder.HasKey(p => p.Id);
Builder.HasOne(p => p.Contractor).WithMany(p=>p.DocsVats).HasForeignKey(p =>
p.ContractorNo).IsRequired();
Builder.Property(p => p.Id).HasColumnName("Id").IsRequired();
}
}
和映射配置文件:
public class MappingProfile : Profile
{
public MappingProfile()
{
CreateMap<Entities.DocsVat, DocsVatDto>();
CreateMap<DocsVatDto, Entities.DocsVat>();
CreateMap<FnPurchaseDetail, DocsVatDto>();
CreateMap<Entities.DocsVat, DocsVatDto>().ForMember(dto => dto.Contractor, conf =>
conf.MapFrom(ent => ent.Contractor.Id));
}
}
我遇到的错误:
Error mapping types.
Mapping types:
DocsVatDto -> DocsVat
###.ApplicationServices.Doc.DocsVAT.Dto.DocsVatDto -> ###.Entities.DocsVat
Type Map configuration:
DocsVatDto -> DocsVat
###.ApplicationServices.Doc.DocsVAT.Dto.DocsVatDto -> ###.Entities.DocsVat
Destination Member:
Contractor
我该如何解决?
【问题讨论】:
-
你解决了吗?
标签: entity-framework entity-framework-core navigation-properties