我有一个应用程序,我们有一些模块。我们有例如FinancialModule和EmployeeModule。
我有一个Core项目,我创建了一个名为DefaultDbContext的抽象类,它继承自DbContext,我有一个名为ModelCreating的抽象方法,所有ConcreteClass(EFFinacialContext和EFEmployeeContext)都应该实现它来添加映射类。
我的问题是,我有一个带有这些模块的应用程序并收到此消息“实体类型EntityName不是当前上下文模型的一部分。”
我让每个模块在另一个应用程序中运行,一切都很好,所以,一起运行时出错了。
使用具有倍数db上下文的应用程序时遇到同样的问题?
由于
答案 0 :(得分:1)
继承你的问题
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
}