EF6 使用多个 DbContext -(实体类型 EntityName 不是当前上下文的模型的一部分)



我有一个应用程序,我们有一些模块。例如,我们有FinancialModule和EmployeeModule。

有一个核心项目,我创建了一个名为DefaultDbContext的抽象类,它继承自DbContext,我有一个名为ModelCreate的抽象方法,所有ConcreteClass(EFFinacialContext和EFEmployeeContext)都应该实现它以添加映射类。

我的问题是,我有一个带有这些模块的应用程序,并收到此消息"实体类型 EntityName 不是当前上下文模型的一部分"。

我让每个模块在另一个应用程序中运行,一切都很好,所以一起运行时出了点问题。

谁在使用具有多个数据库上下文的应用程序时遇到同样的问题?

谢谢

这是

你的问题

public class Context1 : DbContext
{
    public IDbSet<Entity1> E1{get;set;}
}
public class Context2 : DbContext
{
    public IDbSet<Entity2> E2{get;set;}
}
public class Entity1
{
    //some stuff
}
public class Entity2
{
    //some stuff
    public Entity1 E1 {get;set;} //you arent allowed this as its not in your current dbcontext
}

相关内容

最新更新