尝试在 Visual Studio 2022 中使用实体框架添加带有视图的 MVC 控制器时出现错误

问题描述 投票:0回答:1

我正在构建一个 ASP.NET Core 6 MVC 项目作为学校作业。对于这个项目,我之前分别添加了空控制器和剃刀视图,没有任何问题。现在作为课程的一部分,我必须添加一个“带有视图的 MVC 控制器,使用实体框架”。

当我尝试添加此控制器时,出现错误

运行所选代码生成器时出错:“包恢复失败。回滚“项目名称”的包更改

我正在 .NET 6.0 中构建项目并添加以下包:

  • Microsoft.EntityFrameworkCore.Design (6.0.28)
  • Microsoft.EntityFrameworkCore.SqlServer (6.0.28)
  • Microsoft.EntityFrameworkCore.Tools (6.0.28)
  • Microsoft.VisualStudio.Web.CodeGeneration.Design (6.0.16)
  • Microsoft.VisualStudio.Web.CodeGeneration.Design (6.0.16)

我尝试过重建和清理项目,但我不断收到相同的错误消息。

控制器用于数据库表 TeamPlayers 中的数据,该表也已存在于我的 LocalDb 中。

我添加了一些屏幕截图来显示错误消息并概述我在项目中创建的包和模型。

我已经研究这个问题几天了,如果实体框架包不是相同的版本,通常会出现此问题,但在我的情况下,它们都是相同的。

我尝试再次从头开始重建项目,并确保我的所有包都是相同的版本。我还尝试过在 VS 2022 中清理和重建项目。

我希望有人可以帮助我找出导致此问题的原因,或者是否有人已经解决了这个问题,因为我在网上找不到任何东西。

c# entity-framework-core asp.net-core-mvc visual-studio-2022 asp.net-core-6.0
1个回答
0
投票

您可以尝试以下方法:

1:添加在线参考: 工具 > nuget 包管理器 > 包管理器设置 > 包源

2:验证包来源, 添加源:https://api.nuget.org/v3/index.json

3:清除nuget缓存并重建项目

nuget locals all-clear

4:尝试降低版本并使用相同版本, 下载并安装相同版本的包

5:如果您有多个项目,请检查您的解决方案 如果您的解决方案中包含多个项目,您需要确保它们引用相同的元包,就好像项目之间存在版本不匹配一样

如果错误仍然存在,能否分享一个简单且可重现的示例demo,以便更好地发现问题。

© www.soinside.com 2019 - 2024. All rights reserved.