如何使用实体框架代码第一种方法正确创建数据库

时间:2014-07-27 09:43:03

标签: c# sql-server asp.net-mvc entity-framework ef-code-first

在使用实体框架代码第一种生成数据库的方法之后,我仍然不确定正确的方法是什么,我能够生成数据库的唯一方法是使用迁移,所以在设置模型后我需要,我使用包管理器并执行:

Enable-Migrations

然后:

Add-Migration Initial

最后:

Update-Database

我见过很多与此类似的教程:

Code First to a New Database

谈到设置模型,在运行项目后,数据库显示完全没有使用迁移,我很困惑,所以这是我的问题:

  1. 是否在using语句后创建了数据库?所以在上面的教程中:

    using (var db = new BloggingContext()) 
    
  2. 迁移通常仅用于更新数据库吗?

  3. 在您看来,最好的方法是什么?

1 个答案:

答案 0 :(得分:1)

<强> 1。是否在using语句之后创建了数据库?所以在上面的教程中:

using (var db = new BloggingContext()) 

这几乎可行,但您需要添加其他语法,以使EF对数据库执行某些操作,例如。

using (var db = new BloggingContext()) 
{
    db.YourDbSetProperty.Any();
}

<强> 2。迁移通常仅用于更新数据库吗?

是的,使用EF迁移,您将能够将您从代码中所做的更改应用到数据库,而无需删除并重新创建数据库。

但它也可用于生成数据库升级脚本。

第3。在您看来,最好的方法是什么?

这主要是基于意见的,您可以采用任何一种方式,但为了在本地计算机上进行开发,我通常会从代码中删除并重新创建数据库,而不是使用迁移语法。