.net core EF迁移没有影响
我已经开始开发没有启用dotnet ef迁移的后端。一段时间后,我在的帮助下开始使用迁移 现在,我的一个模型再次更改,我想应用另一个迁移,这次不是通过脚本,而是直接在applications startup.cs中使用.net core EF迁移没有影响,.net-core,entity-framework-core,.net Core,Entity Framework Core,我已经开始开发没有启用dotnet ef迁移的后端。一段时间后,我在的帮助下开始使用迁移 现在,我的一个模型再次更改,我想应用另一个迁移,这次不是通过脚本,而是直接在applications startup.cs中使用\u myContext.Database.MigrateAsync()我基本上将一个字段从myField重命名为myFieldId。 启动应用程序后,我可以看到关于日志条目的 Applying migration '20170908221458_MyMigration'. O
\u myContext.Database.MigrateAsync()代码>我基本上将一个字段从myField
重命名为myFieldId
。
启动应用程序后,我可以看到关于日志条目的
Applying migration '20170908221458_MyMigration'.
Opening connection to database 'database' on server '(local)\INSTANCE'.
Beginning transaction with isolation level 'Unspecified'.
Executed DbCommand (119ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
DECLARE @var0 sysname;
SELECT @var0 = [d].[name]
FROM [sys].[default_constraints] [d]
INNER JOIN [sys].[columns] [c] ON [d].[parent_column_id] = [c].[column_id] AND [d].[parent_object_id] = [c].[object_id]
WHERE ([d].[parent_object_id] = OBJECT_ID(N'myTable') AND [c].[name] = N'myField');
IF @var0 IS NOT NULL EXEC(N'ALTER TABLE [myTable] DROP CONSTRAINT [' + @var0 + '];');
ALTER TABLE [myTable] DROP COLUMN [myField];
Executed DbCommand (23ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
ALTER TABLE [myTable] ADD [myFieldId] xml NOT NULL DEFAULT 0;
Closing connection to database 'database' on server '(local)\INSTANCE'.
看起来不错。但是我的模型在数据库中没有改变!
此外,我的EFMigrationsHistory缺少一个新条目。因此,在下一次应用程序启动时,EF将再次尝试应用迁移。有什么想法吗?该死。我的错误是,我没有在本地为我的上下文执行dotnet ef数据库更新
,而只是添加了dotnet ef迁移