シーン
EF 移行を通じて、データベース テーブルの名前、フィールド、主キー、インデックスを変更する必要があります。
通常、テーブルの名前が変更されると、生成された ef マイグレーションによって古いテーブルが削除され、新しいテーブルが作成されます。古いテーブルを削除したくない場合は、生成されたマイグレーションを変更する必要があります。
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameTable(
name: "oldTableName",
newName: "newTableName");
migrationBuilder.DropPrimaryKey(
name: "old_pk",
table: "newTableName");
migrationBuilder.AddPrimaryKey("new_pk", "newTableName", "columnName");
migrationBuilder.RenameIndex(
name: "old_indexName",
newName: "new_indexName",
table: "newTableName");
migrationBuilder.RenameColumn("old_columnName", "newTableName", "new_columnName");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameTable(
name: "newTableName",
newName: "oldTableName");
migrationBuilder.DropPrimaryKey(
name: "new_pk",
table: "oldTableName");
migrationBuilder.AddPrimaryKey("old_pk", "oldTableName", "coumnName");
migrationBuilder.RenameIndex(
name: "new_indexName",
newName: "old_indexName",
table: "oldTableName");
migrationBuilder.RenameColumn("new_columnName", "oldTableName", "old_columnName");
}