Tom*_*uer 7 c# entity-framework ef-code-first ef-migrations entity-framework-6
我重新构建了我的项目,导致更改了数据库上下文的命名空间名称和相关的Code First配置.那时,我有一个脚手架迁移,"InitialCreate",因此我的数据库的__MigrationHistory表包含一行,其中包含一些MigrationId,ContextKey包含类的命名空间名称和类名Configuration.
之后我搬来搬去的事情,在执行Get-Migrations没有返回结果,改变后ContextKey按我的同事的建议下,"InitialCreate"迁移正确枚举.
在更改期间我应该采取哪些步骤,以便不会破坏我的迁移的连续性,从而无需ContextKey手动重命名?显然,对于一个应用的迁移来说,这没什么大不了的,但是对于几十个应用的迁移来说,这是一个巨大的痛苦.
Ogn*_*rov 14
我被困在这里很长一段时间,并在这里问及回答.在EF文档中,您可以在此处找到有关上下文键的说明.您应该创建自定义迁移配置,如下所示:
public class MyMigrationConfiguration : DbMigrationsConfiguration<MyMigrationContext>
{
public MyMigrationConfiguration ()
{
AutomaticMigrationsEnabled = false;
AutomaticMigrationDataLossAllowed = false;
MigrationsNamespace = "My.Migrations.Assembly";
MigrationsDirectory = "My/Migrations/Directory";
ContextKey = "MyContexKey"; // You MUST set this for every migration context
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3663 次 |
| 最近记录: |