0

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

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

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

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

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

谢谢

4

1 回答 1

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
}
于 2013-09-14T01:33:03.440 回答