我正在使用以下那些软件包从.Net Core项目中使用MySql(AWS Aurora):
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.2.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.4" />
<PackageReference Include="MySql.Data" Version="8.0.16" />
<PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.16" />
它工作正常,但是,当我有一个重命名一个列的方案时,我遇到了问题。它不起作用。
创建迁移文件正常。它包含“ RenameColumn ”:
migrationBuilder.RenameColumn(
name: "SecretKey",
table: "Company",
newName: "Password");
问题是当运行 Update-database 命令时,它不起作用,出现以下错误:
System.NotImplementedException:方法或操作未实现。 在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(RenameColumnOperation操作,IModel模型,MigrationCommandListBuilder构建器) 在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(MigrationOperation操作,IModel模型,MigrationCommandListBuilder构建器)处 在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(IReadOnlyList`1操作,IModel模型) 在Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.GenerateUpSql(迁移迁移) 在Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(String targetMigration) 在Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.UpdateDatabase(String targetMigration,String contextType) 在Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(操作动作)处
我已将“ RenameColumn”手动更改为两个部分: DropColumn 和 AddColumn 。它暂时在工作。
有什么建议吗?