1

我们正在使用两个数据库,因为我需要单独继承这个模型或实体表。为此,如何在实体框架工作中为特定类或实体表指定数据库名称。有可能的?

Database Name: "Test1"

public class User : BaseEntity
{        
    public string Email { get; set; }
    public string Password { get; set; }
}

现在如何将此模型设置为另一个模型中的导航属性。像,

Database Name: "Test2"

public class Test: BaseEntity
{
  public int UserId { get; set; }

  public virtual User User { get; set; }
}

public class BaseEntity
{
   public int Id { get; set; }
}
4

2 回答 2

2

实体框架DbContext 可以处理一个 Database。那么你DbContext的两个数据库应该有两个。


更新 :

我建议你不要那样做。换句话说,你的数据库和你的模型应该是和谐的我喜欢这个词:)”

除此之外,我认为它应该在服务类“层”中。

因此,在您的示例中,您假设有一个UserService类来获取您的用户,并且不要在Test类中执行此逻辑。

需要注意的另一件事:如果您的模型以这种方式连接在一起,那么您应该只有一个数据库。

于 2012-07-17T11:40:13.957 回答
0

如果你想inherit从课堂上到你的User课,这就是它的样子

public class Test: User 
{
   public int UserId { get; set; } 
}

现在Test类将具有基类 ( User) 的所有属性以及它自己的属性UserId

于 2012-07-17T12:28:16.960 回答