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

ASP.NET Core 6创建EF MVC控制器时包还原失败求助

解决ASP.NET Core 6创建EF MVC控制器时的“Package restore failed”问题

排查与修复步骤

  • 核对.NET 6 SDK版本:命令行执行 dotnet --list-sdks 查看本地已安装SDK,确保存在稳定版.NET 6 SDK,若版本缺失或为预览版,下载对应稳定版安装。
  • 清空NuGet缓存:
    1. 打开VS2022,依次点击「工具」→「选项」→「NuGet包管理器」→「常规」,点击「清除所有NuGet缓存」。
    2. 或命令行执行 dotnet nuget locals all --clear 清理全局缓存。
  • 修正项目包配置:
    打开项目.csproj文件,确保EF相关包版本与.NET 6兼容且统一,示例配置如下:
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.25" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.25" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.25">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.16" />
    
    删除版本不一致或不兼容的包引用,保存后重新加载项目。
  • 手动恢复依赖:右键项目→「管理NuGet程序包」,切换到「已安装」标签,处理带黄色警告的包(更新或重装);再右键项目→「恢复NuGet包」触发手动恢复。
  • 简化NuGet源配置:打开「工具」→「选项」→「NuGet包管理器」→「包源」,仅保留官方NuGet源(https://api.nuget.org/v3/index.json),禁用其他私有源或镜像后重试。
  • 清理并重新生成:依次执行「生成」→「清理解决方案」、「生成」→「重新生成解决方案」,完成后再尝试创建控制器。
  • 确认目标框架:右键项目→「属性」→「应用」,确保「目标框架」选择.NET 6.0,避免误选其他版本。

关键提示

ASP.NET Core 6与5在项目结构、依赖配置上存在差异,Core 6对工具包版本匹配要求更严格,切勿直接复用Core 5的包版本配置,必须使用适配.NET 6的稳定版包。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 12:59:54