如何在ASP.NET Core 1中使用EF6

asp.net asp.net-core c# ef-migrations entity-framework-core

我創建了一個ASP.NET Core 1項目並使用.Net Core 1.0框架。並希望使用Entity Framework 6
我按照這個教程https://docs.efproject.net/en/latest/platforms/aspnetcore/new-db.html ,當我嘗試使用語句進行遷移時:

PM> Add-Migration MyFirstMigration

然後它告訴我:

The EntityFramework package is not installed on project 'IndustryCloud'.

可以在ASP.NET Core 1中使用EF6嗎?

熱門答案

您可以將Entity Framework 6與ASP.Net Core 1.0一起使用。 可以在Github上找到示例應用程序。

為了使它工作,你必須按照repo的說明(下面我粘貼關鍵部分,但我鼓勵你檢查存儲庫中的那些):

在project.json裡面:

  • 從目標框架中刪除netcoreapp1.0並添加net451。
  • 刪除所有EF Core並將Migrator.EF6.Tools + EF6添加到您的依賴項

在Startup.cs中:

  • 刪除EF Core相關的所有內容。
  • 只需將db上下文添加到services: services.AddScoped<ApplicationDbContext>();

下一個:

刪除EF Core生成的“遷移”或“數據/遷移”文件夾。

最後:

dotnet ef migrations enable
dotnet ef migrations add InitialCreate
dotnet ef database update

請注意,您可以使用另一個名為MR.AspNet.Identity.EntityFramework6的項目來與實體框架6橋接Asp.Net核心身份。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因