求助:Visual Studio未显示.NET Core 2.1及NuGet升级兼容报错问题
解决.NET Core 2.1在Visual Studio中不显示及NuGet兼容性问题
嘿,咱们先把问题串起来看:你看不到*.NET Core 2.1的目标框架选项,导致项目还是挂在.NET Core 2.0上,升级ASP.NET Core包时自然就会出现兼容性错误——毕竟Microsoft.AspNetCore.All 2.1.0-preview2-final只支持.NET Core 2.1*嘛。下面一步步来解决:
一、先让Visual Studio认出.NET Core 2.1 SDK
你说已经装了好几次SDK但没效果,大概率是这几个环节出了问题:
- SDK版本要精准对应:你用的NuGet包是预览版
2.1.0-preview2-final,那必须安装*.NET Core 2.1 Preview 2 SDK*,别装正式版或者其他预览版,版本不匹配VS根本认不出来。 - VS版本得跟上节奏:.NET Core 2.1 Preview 2需要Visual Studio 2017 15.6 Preview 3及以上版本支持,旧版VS就算装了SDK也白搭。赶紧去检查下你的VS版本,不够的话就升级到对应预览版(或者如果想用正式SDK,就换正式版的NuGet包)。
- 清缓存重启VS:有时候VS会抱着旧框架信息不放,试试这几步:
- 把所有VS窗口都关掉
- 打开命令提示符,敲
dotnet --list-sdks,确认输出里确实有2.1.0-preview2的SDK - 去
C:\Users\{你的用户名}\AppData\Local\Microsoft\VisualStudio\{你的VS版本号}\ComponentModelCache这个路径,把里面的文件全删掉 - 重新打开VS,再去看目标框架选项
二、搞定NuGet兼容性错误
等VS能看到*.NET Core 2.1*之后,先把项目的目标框架改过去:
- 右键项目 → 属性 → 应用标签页 → 目标框架,选择*.NET Core 2.1*
- 这时候再去NuGet包管理器升级
Microsoft.AspNetCore.All到2.1.0-preview2-final,就不会再弹兼容性错误了
要是改完还是有问题,试试这俩操作:
- 清NuGet缓存:工具 → NuGet包管理器 → 管理解决方案的NuGet包 → 右上角设置图标 → 清除所有NuGet缓存
- 删除项目根目录下的
obj和bin文件夹,然后重新生成项目
三、万一还是不行?试试这些排查点
- 确认你的系统是64位,有些早期预览版SDK只支持64位系统
- 检查VS的安装组件:打开VS安装程序 → 修改 → 单个组件 → 找到*.NET Core 2.1开发工具*,确保已经勾选安装
内容的提问来源于stack exchange,提问作者Chris Westbrook
相关产品推荐
相关产品推荐

