我有几个问题:
-
在EF5代码中,哪个方法负责检查数据库是否退出,如果不是这种情况,哪个方法创建数据库?
-
如果我首先在我的DAL项目中使用EF代码,并且我希望EF生成其他数据库用于测试目的,我可以通过使用EF来做到这一点吗?我已经在连接字符串中更改了初始目录,以检查它是否创建了其他数据库,但它没有,并抛出异常
-
通过使用ef Code-First或DataBase-First,我们最终有DbContext类,EF5如何知道我们使用哪个方法为它的内部动作?
谢谢。
检查Context.Database.Exists();
是否存在的Api和Context.Database.CreateIfNotExits();
一旦你访问EF上下文,它就开始做事情。有一个默认的行为,你可以操作的东西。
上下文可以是"Open again different DB Instances yes"。您甚至可以使用它在同一服务器上创建不同的db。小心使用构造函数和相应的API。
<connectionStrings>
<add name="YouCanHaveManyofTheese"
connectionString="Data Source=localhost;Initial Catalog=DIFFERENT DBNAME ;Integrated Security=True;MultipleActiveResultSets=True;App=EntityFramework"
providerName="System.Data.SqlClient" />
也
查看Database.SetInitializer();
Ef知道它是创建了DB,还是迁移了DB。操作记录在这里。 [dbo]。[__MigrationHistory]