Entity framework 实体类型不是当前上下文模型的一部分-在NopCommerce上

Entity framework 实体类型不是当前上下文模型的一部分-在NopCommerce上,entity-framework,ef-code-first,nopcommerce,Entity Framework,Ef Code First,Nopcommerce,我正在扩展NopCommerce的实体。我加了一张新桌子。然后 我定义了所有属性、映射和所有步骤,与类别、产品或其他新实体相同 但是,当我再次重建Nop.Data项目和调试项目时,这个错误不会显示,并且可以正常工作,在几分钟后,或者在没有重建Nop.Data的情况下进行调试,它会再次出现 “/”应用程序中的服务器错误 实体类型ProductPlan不是当前上下文模型的一部分。 说明:执行过程中发生未处理的异常 当前的web请求。请查看堆栈跟踪以了解更多信息 有关错误的信息及其在代码中的来源 异常

我正在扩展NopCommerce的实体。我加了一张新桌子。然后 我定义了所有属性、映射和所有步骤,与类别、产品或其他新实体相同

但是,当我再次重建Nop.Data项目和调试项目时,这个错误不会显示,并且可以正常工作,在几分钟后,或者在没有重建Nop.Data的情况下进行调试,它会再次出现

“/”应用程序中的服务器错误 实体类型ProductPlan不是当前上下文模型的一部分。

说明:执行过程中发生未处理的异常 当前的web请求。请查看堆栈跟踪以了解更多信息 有关错误的信息及其在代码中的来源

异常详细信息:System.invalidOperationException:实体类型 ProductPlan不是当前上下文的模型的一部分

这些类在Nop.Data项目中,而不是在任何插件中

public partial class ProductPlan : BaseEntity
{
    public virtual int ProductId { get; set; }
    public virtual int StoreId { get; set; }
    public virtual int CategoryId { get; set; }
    public virtual DateTime StartDate { get; set; }
    public virtual DateTime EndDate { get; set; }
    public virtual int DisplayOrder { get; set; }
    public virtual bool IsSlider { get; set; }
    public virtual bool Deleted { get; set; }

    
    public virtual Product Product { get; set; }
    public virtual Category Category { get; set; }
}

public partial class ProductPlanMap : NopEntityTypeConfiguration<ProductPlan>
{
    public ProductPlanMap()
    {
        this.ToTable("ProductPlan");
        this.Property(p => p.ProductId).IsRequired();
        this.Property(p => p.StoreId).IsRequired();
        this.Property(p => p.CategoryId).IsRequired();
        this.Property(p => p.DisplayOrder).IsRequired();
        this.Property(p => p.StartDate).IsRequired();
        this.Property(p => p.EndDate).IsRequired();
        this.Property(p => p.IsSlider).IsRequired();
        this.Property(p => p.Deleted).IsRequired();
    }
}
公共部分类ProductPlan:BaseEntity
{
公共虚拟int ProductId{get;set;}
公共虚拟整数存储ID{get;set;}
公共虚拟int类别ID{get;set;}
公共虚拟日期时间起始日期{get;set;}
公共虚拟日期时间结束日期{get;set;}
公共虚拟整数显示顺序{get;set;}
公共虚拟布尔IsSlider{get;set;}
公共虚拟bool已删除{get;set;}
公共虚拟产品产品{get;set;}
公共虚拟类别{get;set;}
}
公共部分类ProductPlanMap:NoEntityTypeConfiguration
{
公共产品计划图()
{
本表为ToTable(“产品计划”);
this.Property(p=>p.ProductId).IsRequired();
this.Property(p=>p.StoreId).IsRequired();
this.Property(p=>p.CategoryId).IsRequired();
属性(p=>p.DisplayOrder).IsRequired();
this.Property(p=>p.StartDate).IsRequired();
this.Property(p=>p.EndDate).IsRequired();
this.Property(p=>p.IsSlider.IsRequired();
this.Property(p=>p.Deleted).IsRequired();
}
}

有什么建议或解决办法吗?

这是个奇怪的问题。你有没有试着在一次清洁后重新建造?如果没有帮助,请转到每个bin文件夹并删除所有DLL,然后再试一次。@Eray您有什么解决方案吗?我也被困在那一部分。请帮忙me@Umar我解决了这个问题,将它们引入新项目,并留下不必要的插件。