You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2022添加ASP.NET Core MVC scaffolded项时包还原失败求助

解决ASP.NET Core MVC Scaffolding时包还原失败的问题

排查与修复步骤

1. 清理本地NuGet缓存

打开Visual Studio的工具 > NuGet包管理器 > 包管理器设置,找到NuGet包管理器 > 常规,点击清除所有NuGet缓存。也可通过命令行执行:

dotnet nuget locals all --clear

2. 统一项目包版本

打开项目的.csproj文件,确保所有EF Core相关包及代码生成包版本完全匹配(比如统一为6.0.x稳定版),示例配置:

<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.25">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.25" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.16" />

注意:Microsoft.VisualStudio.Web.CodeGeneration.Design是Scaffolding必需依赖,若未安装需手动添加。

3. 手动还原并重建项目

  • 右键项目选择还原NuGet包
  • 执行生成 > 清理解决方案,再执行生成 > 生成解决方案
  • 重新尝试添加Scaffolded项

4. 检查NuGet源配置

在包管理器设置的包源中,确认NuGet.org源处于启用状态,地址为https://api.nuget.org/v3/index.json,无错误的私有源或镜像干扰。

5. 修复Visual Studio组件

打开Visual Studio Installer,选择修改,确保勾选ASP.NET和Web开发、.NET Core跨平台开发组件,完成修复后重启VS。

6. 尝试命令行生成Scaffold

若界面操作失败,用dotnet命令行执行(替换实体类和DbContext名称):

dotnet aspnet-codegenerator controller -name MoviesController -m Movie -dc MovieContext -outDir Controllers

内容的提问来源于stack exchange,提问作者Gurdeep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 04:22:05