Dot-Net

CLI 中實體框架核心的 -IgnoreChanges 開關等效於什麼?

  • September 6, 2021

使用 Visual Studio 可以執行命令

Add-Migration InitialCreate -IgnoreChanges 

在使用 Code First 工作流創建現有數據庫模型的第一次遷移時,在包管理控制台中。

CLI 的等價物是什麼?添加命令將是這樣的:

dotnet ef migrations add InitialCreate

但是忽略開關呢?

在沒有其他方法的情況下,可以清空遷移所有程式碼的 Up 和 Down 方法塊並執行數據庫更新。

public partial class Initial : Migration
{
   protected override void Up(MigrationBuilder migrationBuilder)
   {

   }

   protected override void Down(MigrationBuilder migrationBuilder)
   {
   }
}

我的項目有一個現有的數據庫,我們想使用遷移,因為我們IgnoreChanges在 EFCore 中沒有我所做的是執行命令

Add-Migration -Name InitialMigrationpackage manager console視覺工作室中,這InitialMigration.cs為我創建了文件

然後我註釋掉了 Up 函式中的程式碼InitialMigration.csupdate-databasepackage manager console.

這樣做會dbo.__EFMigrationsHistory在您的數據庫中創建一個名為的表,用於跟踪您的遷移。

稍後,當您添加或刪除該列時,只需執行 Add-Migration 命令,該命令將為您創建一個新的遷移,確保您驗證 Up 和 Down 功能,以確保一切正常且符合預期。

驗證後,執行update-database應該為您執行新遷移腳本的函式。

目前,這就是我們繼續實施的方式。

引用自:https://stackoverflow.com/questions/53210060