Add-Migration显示错误EntityFrameworkCore.没有安装设计

本文关键字:安装 显示 错误 EntityFrameworkCore Add-Migration | 更新日期: 2023-09-27 18:16:31

我在这里遵循EntityFrameworkCore的教程https://docs.efproject.net/en/staging/platforms/aspnetcore/new-db.html但是当我到达创建数据库的教程部分https://docs.efproject.net/en/staging/platforms/aspnetcore/new-db.html#create-your-database并运行Add-Migration MyFirstMigration命令,我得到以下错误:

Cannot execute this command because Microsoft.EntityFrameworkCore.Design is not installed. Install the version of that package that matches the installed version of Microsoft.EntityFrameworkCore and try again.

我试图安装Microsoft.EntityFrameworkCore.Design以及Microsoft.EntityFrameworkCore.SqlServer.Design每个版本都有NuGet,但仍然得到相同的错误。

我还尝试使用命令

在NuGet PM外运行。
  • dotnet恢复
  • 添加MyFirstMigration

并得到以下错误:

Unhandled Exception: System.MissingMethodException: Entry point not found in assembly 'Microsoft.EntityFrameworkCore.Design, Version=1.1.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.

我试了我能想到的所有方法,在网上到处找,但仍然没有找到答案。

Add-Migration显示错误EntityFrameworkCore.没有安装设计

检查您的项目。Json包含以下条目

在依赖关系:

"Microsoft.EntityFrameworkCore.Design": {
  "version": "1.0.0-preview2-final",
  "type": "build"
},
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
工具:下

"Microsoft.EntityFrameworkCore.Tools": {
  "version": "1.0.0-preview2-final",
  "imports": [
    "portable-net45+win8+dnxcore50",
    "portable-net45+win8"
  ]
},

首先,本文档使用VS2015 Update2,而当前VS2015的最新版本是Update 3。所以我建议你升级你的VS2015到Update 3,它已经修复了很多VS的错误。

然后根据教程,当我运行Add-Migration MyFirstMigration命令时,我得到相同的错误消息。然后我运行命令"Install-Package Microsoft.EntityFrameworkCore"。在包管理器控制台中安装EntityFrameworkCore.Design。安装后,当我运行Add-Migration MyFirstMigration命令时,它添加了success .

以下是我的项目。Json文件内容。请检查依赖项和工具版本。请确保它们是正确的版本。

"dependencies": {
"Microsoft.NETCore.App": {
  "version": "1.0.0",
  "type": "platform"
},
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview3-final",
"Microsoft.EntityFrameworkCore.Design": "1.0.1"
},
"tools": {
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
},

我是一个。net/c#新手,一直想学习web编码。但从来没有——直到我理解了blazor,以及它如何使我有可能拥有一个我可以自己处理和学习的环境。

这个错误让我崩溃,花了几个晚上的研究(VS 16.5.0与EF 3.2.0)。直到我终于发现为什么我得到了错误,不能按照教程。

显然,一个依赖项被创建为_._,而不是正确的引用(见图)

腐败依赖