2017-10-20 192 views
1

據我所知,連接到SQL Express數據庫(或LocalDB)我是新來的ASP.NET Core,我需要安裝EntityFramework。試圖將它從的NuGet管理器安裝成功完成添加,但我得到這樣的警告:通過NuGet管理器安裝EntityFramework

包「的EntityFramework 6.1.3」被」 .NETFramework,Verions = v4.6.1' ,而不是通過恢復項目的目標框架'.NETCoreApp,Version = v2.0'。這個軟件包可能與項目不完全兼容。

請注意這是我的意大利語翻譯,因此實際的英語信息可能會有所不同。

我不明白如何「恢復」(也許「安裝」?)由目標框架的包。

+0

你是否檢查過'packages.config'中的版本?如果NuGet在解決方案的「packages」文件夾中找不到該軟件包,那麼NuGet會恢復它的版本 – DiskJunky

回答

4

您遇到的問題是您正在嘗試安裝EF for .Net,但實際上應該安裝EF Core版本。 現在有兩個版本的EF .NetFramework稱爲EntityFramework,一個是.NetCore框架,名爲EntityFrameworkCore。由於.Net Framework 4.6.1和.NetCore Framework 2.0.0都實現了.Net Standard 2.0,因此您可以在.NetCore Project中實際使用「常規」EF庫。你在做什麼?由於這些軟件包不是用來與NetCore一起使用的,NuGet會顯示你上面提到的警告。 所以你很可能要卸載EntityFramework並安裝EntityFrameworkCore。 在這裏閱讀EF Core Docu的說明

+0

也許你應該明確地說「嘗試安裝EF for .Net Framework」,它更清楚一點,即EF不是真正用於.Net Core – DogeAmazed