2012-03-13 133 views
0

我们使用实体框架4.3 Code First。我们有三个数据库。对于每个数据库我们都有一个DbContext。在第一个数据库中,我们有一些遗留表/ sql。总体来说,大约有。 70-80个表/实体。实体框架4.3合并多个数据库/上下文

将来我们要使用EF 4.3 Migration。

  • 我们可以将所有三个数据库合并为一个并保留三个DbContext类吗?
  • 合并DbContext类更好吗?
  • EF 4.3可以处理这个问题吗?

回答

3

如果你想使用3种上下文类型,你仍然应该使用3个数据库。数据库迁移依赖于上下文类型,三种上下文类型的迁移在单个数据库上不起作用(否则会导致很多麻烦,包括完全手动处理迁移代码)。作为替代方案,您可以将所有数据库合并到单个数据库,还必须将上下文类型合并为单个数据库。这个选择由你。

+0

我可以为迁移添加第四个上下文吗?一个“超级” - 与所有表/ DbSets进行迁移的文本和三个用于访问应用程序中的数据的上下文。 – LuckyStrike 2012-03-14 08:39:14

+0

它应该可以工作,但在这种情况下,没有理由拥有额外的三个上下文。它只会更容易维护主要背景和其他背景。 – 2012-03-14 08:59:05

+0

感谢您的回答。 70-80(或更多)的企业/表是否有任何性能问题?所以我想保留三个上下文类。 – LuckyStrike 2012-03-14 11:49:44