[英]Entity Framework Database First - How to prevent running the initial migration?
我最近能夠使用 EF Core 搭建一個現有的數據庫。 我們希望完全遷移到 EF Core,但我們遇到了一些障礙,我需要您的幫助。
我們從運行 scaffold 命令開始,最后得到這個文件結構
C:\>ls .\EFCore
Context
Models
EFCore.csproj
然后在創建上下文和模型之后,我運行了初始遷移命令。
dotnet ef migrations add CreateDb
運行該命令后,我們的目錄如下所示
C:\>ls .\EFCore
Context
Models
Migrations
EFCore.csproj
C:\>ls .\EFCore\Migrations
20210616210256_CreateDb.cs
20210616210256_CreateDb.Designer.cs
DbContextModelSnapshot.cs
我的問題
數據庫已經在所有環境中創建,所以我們不希望實體執行初始數據庫遷移。 我應該刪除20210616210256_CreateDb.cs
和20210616210256_CreateDb.Designer.cs
來實現這一點嗎?
我能想到的另一條路線是創建__EFMigrationsHistory
表並向其中插入一行。 這會假裝我們已經運行了初始數據庫創建。
請幫助,我想以最干凈的方式做到這一點。
刪除/注釋遷移文件的 Up() 和 Down() 方法中的代碼並調用更新數據庫。 你不想要創建表格的代碼,即
CreateTable(
"dbo.YourTable",
c => new
{ //Properties set here })
您的遷移課程可能如下所示 -
public partial class Initial : DbMigration
{
public override void Up()
{
}
public override void Down()
{
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.