实体代码优先:两个DatabaseInitializer用于相同的DbContext类型

时间:2016-11-07 09:37:47

标签: entity-framework ef-code-first

我有两个DbContext:相同类型(MyDbContext)但不同的连接字符串。

我会为他们使用不同的数据库初始化器。

有可能吗?

静态通用函数无法实现这一点:

Database.SetInitializer<MyDbContext>(new MyDbInitializer());

1 个答案:

答案 0 :(得分:0)

这是不可能的。如果需要以不同的方式初始化db,则需要维护2 context个类型。但是您可以将公共实体抽象为单独的类,然后您可以通过在2 {{1}中使用继承来使用该公共类。 } types.A之后,您可以根据需要初始化数据库。