EF Model First:如何以编程方式生成/删除数据库?

时间:2016-03-31 11:45:18

标签: c# .net entity-framework ef-model-first

在EF教程中,使用以下方式使用Model-First方法:

  1. 创建模型
  2. 从模型生成数据库sql
  3. 通过工作室
  4. 启动生成的sql

    但是如何将它交付给客户?必须在程序启动时自动在客户端创建数据库,并且必须在客户选择某些菜单操作时将其删除。 如何通过EF实现上述行为?

1 个答案:

答案 0 :(得分:1)

你的Model-First方法应该创建一个DbContext派生类,类似于class MyModelContainer : DbContext

在应用的启动阶段,执行以下操作:

using(var ctx = new MyModelContainer())
{
   ctx.Database.CreateIfNotExists();
}

同样,当你想删除它时(首先关闭所有连接):

using(var ctx = new MyModelContainer())
{
   ctx.Database.Delete();
}