Blazor Server 添加Identity脚手架项时出现包还原失败错误
Blazor Server Identity 脚手架包还原失败解决方案
问题表现
运行所选代码生成器时出错,包还原失败,正在回滚‘ProjectName’的包更改
修复步骤
- 第一步:清理临时文件与NuGet缓存
关闭IDE后删除项目根目录下的bin、obj文件夹,执行命令清空全局NuGet缓存:dotnet nuget locals all --clear
重启IDE后先手动将项目中所有Microsoft.AspNetCore.Identity开头的包更新到和项目SDK完全一致的版本,版本不匹配是该问题的最高发原因 - 第二步:校验项目文件配置
打开项目的.csproj文件,删除版本冲突的Identity相关包引用,确认项目目标框架版本和本地安装的.NET SDK版本完全匹配 - 第三步:手动排查还原报错
在项目根目录执行命令:dotnet restore
查看终端输出的具体错误信息,脚手架默认提示会隐藏具体的包冲突、源不可用、包不存在等细节,手动执行restore可拿到完整的报错依据 - 第四步:切换官方NuGet源
临时将NuGet包源切换为官方源,避免第三方源同步不及时导致脚手架所需的特定版本包无法拉取 - 第五步:强制安装对应版本代码生成器
若上述步骤无效,全局安装与项目SDK版本匹配的代码生成工具:dotnet tool install -g dotnet-aspnet-codegenerator --version [你的项目SDK版本号]
安装完成后重新尝试生成Identity脚手架
补充说明
如果仍然触发包回滚提示,可以先手动将Identity相关的所有依赖包预安装到项目中,再执行脚手架生成操作,跳过生成过程中的自动包安装步骤,避免冲突。
内容的提问来源于stack exchange,提问作者Krzysztof Krysztofczyk
相关产品推荐
相关产品推荐

