簡體   English   中英

如何將 EF6(DB 優先)與 ASP.NET 核心 web 應用程序(.NET 框架 4.6.1)一起使用?

[英]How to use EF6 (DB-first) with ASP.NET core web application(.NET framework 4.6.1)?

我正在使用完整的 .NET 框架 4.6.1 模板構建 asp.net 核心 web 應用程序 -

1

我的項目.json 顯示-

  "frameworks": {
    "net461": { }
  },

我想使用EF6 (not EF core) ,因此使用 NuGet package manager 安裝實體框架 -

Install-Package Entityframework

Project.json 添加了此條目-

"EntityFramework": "6.1.3",

當我嘗試使用以下命令創建 DBcontext 和 model 時:

Scaffold-DbContext "Server=XXXXX;Database=XXXXXXX;User Id=XXXXXXX;password=XXXXXXX" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -t TABLENAME

它拋出以下錯誤:

Scaffold-DbContext:術語“Scaffold-DbContext”未被識別為 cmdlet、function、腳本文件或可運行程序的名稱。

檢查名稱的拼寫,或者如果包含路徑,請驗證路徑是否正確並重試。

As I understand (since I have Powershell v3.0 and .NET core 1.0.1), rest of the EF tools and dependencies are missing in my project.json. 那么我需要在我的項目中添加哪些工具和依賴項。json 才能使用 EF6(不是 EF 核心)?

我可以看到的一些選項如下所示。 但不確定哪個適合 EF6

“EntityFramework.MicrosoftSqlServer”:

在此處輸入圖像描述

“EntityFramework.SqlServer”:

在此處輸入圖像描述

“Microsoft.EntityFrameworkCore.SqlServer”:“1.0.0-rc2-final”

在此處輸入圖像描述

我沒有明白你在 .net 中使用核心的意思,但如果你的目標是項目到舊的 .net,你需要安裝兼容版本。

對於 .net 4.8 以下 package 版本將起作用:

Install-Package Microsoft.EntityFrameworkCore.Tools -Version 3.1.25

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM