0

我需要配置由 Entity Framework Code First MigrateDatabaseToLatestVersion 类创建的数据库。

是否可以影响数据库文件参数,如大小或最大大小?我特别感兴趣的是,有没有办法添加数据库文件?

我假设我需要找到实体框架生成 CREATE DATABASE 语句的时刻并对其产生一些影响。据我了解,SqlServerMigrationSqlGenerator 类为时已晚,因为此时数据库已经存在。

4

1 回答 1

0

编辑:根据评论这不起作用: 您可以使用Add-Migration命令添加基于代码的迁移并修改其Up方法以执行Sql("ALTER DATABASE ...")并使用您的数据库执行您想要的任何操作。

数据库是通过DbProviderServices- 这是 EF 和特定数据库服务器之间的桥接组件创建的。ObjectContext公开创建数据库和生成数据库创建脚本的操作。DbMigrator执行时使用数据库创建操作Update。它检查数据库是否存在,如果不存在,则使用ObjectContext.CreateDatabase. 所以如果你想改变创建数据库的过程,你需要实现你自己的迁移器实现来改变Update方法生成数据库的方式(也许你只需要一个装饰器,它会在执行操作之前创建一个数据库DbMigrator.Update)。

于 2012-07-04T15:54:37.193 回答