我有几个问题:
在EF5代码第一个API中,哪个方法负责检查数据库是否退出,如果不是哪个方法创建数据库?
如果我首先使用EF代码我的DAL项目并且我希望EF生成其他数据库用于测试目的我可以使用ef吗?我已经更改了连接字符串中的初始目录,以检查它是否创建了其他数据库,但它没有并引发异常
通过使用ef Code-First或DataBase-First,我们最终拥有DbContext类,EF5我们怎么知道我们使用哪种方法进行内部操作?
感谢。
答案 0 :(得分:0)
检查Api是否存在Context.Database.Exists();
和Context.Database.CreateIfNotExits();
只要您访问EF Context,它就会开始执行操作。 您可以通过默认行为来操纵事物。
上下文可以再次打开不同的数据库实例是。 您甚至可以使用它在SAME服务器上创建不同的DB。 需要仔细使用构造函数和相应的API.CONFIG设置。
<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知道它是创建了数据库,还是迁移了数据库。这些行动都记录在这里。 的 [DBO]。[__ MigrationHistory] 强>