EF代码优先迁移:没有NUGET的MigrateDatabaseToLatestVersion
我需要帮助来阐明EF Code First Migrations如何在生产机器上运行。 我有一些实体类和DbContext派生类来访问实体。 现在,我想执行以下几项操作:
我已经阅读了一些关于迁移的文章,但是他们主要关注NUGET的使用或运行时的纯自动数据库更新(通过MigrateDatabaseToLatestVersion
)。 我知道DbMigration
类,但我无法理解,如何将MigrateDatabaseToLatestVersion
策略和DbMigration
粘合在一起。
UPDATE。
事实上,我不能在项目中使用NUGET,我需要“手动”进行迁移。
只需使用MigrateDatabaseToLatestVersion
。
当我的应用程序启动时,它必须创建数据库,如果数据库不存在;
MigrateDatabaseToLatestVersion
将执行此操作
那么数据库模式必须调整到模型;
MigrateDatabaseToLatestVersion
将执行此操作
如果刚刚创建了数据库,我想创建一些索引;
为数据库创建基于代码的初始迁移,在Up
方法中创建Sql
方法,以定义所需的所有索引。
另外,如果刚刚创建数据库,它必须由一些初始数据播种;
再次在初始迁移中使用Sql
或在迁移配置中使用Seed
方法
所有这些都必须自动执行,不需要任何NUGET命令或外部工具
NuGet和命令将帮助您在设计时准备它(但您可以简单地引用所需的程序集并自己编写所有代码)。 运行时不需要任何powershell命令。
DbMigrator
适用于您不想使用MigrateDatabaseToLatestVersion
并且希望控制代码迁移的场景。
上述就是C#学习教程:EF代码优先迁移:没有NUGET的MigrateDatabaseToLatestVersion分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1023019.html