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

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

我创建了名为“BankAccount”的新 ASP .Net Core 应用程序,当我使用实体框架创建“带有操作的 API 控制器”类型的控制器时,它给了我以下错误 => 运行所选代码生成器时出错:“包恢复失败”。回滚“BankAccount”的包更改

这是我所有依赖项的版本

 <Project Sdk="Microsoft.NET.Sdk.Web">

 <PropertyGroup>
   <TargetFramework>netcoreapp2.1</TargetFramework>
 </PropertyGroup>

 <ItemGroup>
   <Folder Include="wwwroot\" />
 </ItemGroup>

   <ItemGroup>
     <PackageReference Include="Microsoft.AspNetCore.App" />
     <PackageReference Include="Microsoft.AspNetCore.Razor.Language" Version="2.1.0" />
     <PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.1.0" />
     <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="2.1.0" />
     <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration" Version="2.1.0" />
     <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.1.0" />
  </ItemGroup>

 </Project>

这是 Visual Studio 2019 预览版,这是错误的屏幕截图:

在此输入图片描述

asp.net asp.net-core
8个回答
4
投票

我也有同样的问题。我将

Microsoft.EntityFrameworkCore.Tools
Microsoft.EntityFrameworkCore.SqlServer
降级为 5.0.4,问题解决了。


2
投票

我也有同样的问题。问题在于各种 NuGet 包的版本(参见屏幕截图)。我的问题是现有项目,所以我创建了一个新项目并成功搭建了脚手架。之后,我对现有项目使用了相同的软件包版本。

我将屏幕截图中的以下软件包更新为相同版本,一切正常。


1
投票

我正在使用 .net core 5 并遇到了同样的问题。为了解决这个问题,我尝试将 Microsoft.EntityFrameworkCore.Tools 和 Microsoft.EntityFrameworkCore.SqlServer 从 5.0.15 降级到 5.0.12

降级后,我添加了这个“Microsoft.VisualStudio.Web.CodeGeneration.Design” 然后尝试重新添加新的脚手架项目,它对我有用


1
投票

就我而言,我已经安装了 CodeGeneration、CodeGeneration.Design nuget 软件包,并且我已将 .net 版本升级到最高版本,并将所有软件包升级到最高版本。当脚手架尝试安装高于项目 .net 版本的最大版本的包时,会发生这种情况。


0
投票

我正在使用 VS2022 和 .NET CORE 6。我遇到了同样的问题,并通过更新所有已安装的 nuget 包解决了它。


0
投票

是的,从 (v6.0.6---->v6.0.7) 更新所有 NuGet 包后,我遇到了同样的问题

解决方案:更新 NuGet 包


0
投票

我在 .Net 7.0 上也遇到了同样的问题,我正在 7.0.0 版本中安装 NuGet 包。我刚刚更新了所有这些,变成了 7.0.4 和 7.0.5。之后,我就可以使用脚手架了。


0
投票

很抱歉,.net 8.0 怎么样?我在为 ASP Core (MVC) 创建控制器时遇到同样的问题,并且我的所有包都是 8.0 版本(仅 Web.CodeGenerator.Design 为 8.0.7)...

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