VS2017:目标框架下拉列表不显示 .NET Core 2.1 选项
VS2017 : Target framework drop down does not show .NET Core 2.1 option
我已经安装了VS2017 Enterprise 15.6.4
。最近从 official site
安装了 .NET Core 2.1.101 SDK
如果我创建控制台或 asp.net 核心应用程序,我希望 .NET Core 2.1
作为可用的目标框架之一。有人可以帮助我了解我在这里缺少的东西。
按照评论中的建议,我安装了 15.7 预览版 2。仍然没有运气和同样的问题。
我遇到了同样的问题。我通过使用 Runtime for .NET Core 2.1 安装正确的 SDK 解决了这个问题。
基本上 run/create VS Preview 的 2.1 项目,您需要安装“2.1.300”(不是 2.1.4).NET Core SDK 和运行时。 https://www.microsoft.com/net/download/dotnet-core/sdk-2.1.300-preview1(这已经包括所需的运行时)
我在这里 https://github.com/dotnet/cli/issues/8309(dasMulli 于 2 月 24 日发表评论)对这种误导性版本的很好解释。
万一这对其他人有帮助...安装 VS 15.9.2 后,我在 2.2 preview-3 上运行良好的项目停止工作。 VS 无法看到预览版 SDK。我可以使用 dotnet.exe 而不是 VS 构建解决方案。
为了解决这个问题,我在这个解决方案的根文件夹中创建了一个 global.json 指向预览 sdk。这允许 VS 看到预览版本。
这是 15.8.x 和 15.9.x.
之间的 VS 行为变化
要创建 global.json,您可以导航到所需的文件夹并键入:
dotnet new globaljson
我遇到过类似的情况,我尝试安装 dot net 的预览版,但没有帮助。
但是在我更新 visual studio (从 15.8 到 15.9.6 )之后。
我可以在目标框架中看到 dot net core 2.1。
确保 Visual Studio 2017 是最新的。前往 "Tools" -> "Extensions and Updates" 安装 visual studio 更新。这为我解决了问题。
已更新到最新的 VS 2017 并安装了最新的 .Net Core SDK。
将 global.json 更改为指向已安装的最新版本。
这为我解决了。
确保 dotnet PATH 变量的顺序正确
如果您为不同的系统架构安装了 SDK(例如,如果您在 64 位计算机上安装了 32-bit/x86 SDK),那么 PATH variable 中的新条目将已为该特定位置创建(例如,C:\Program Files\dotnet
或 C:\Program Files (x86)\dotnet
)。
问题 是 Visual Studio,在搜索已安装的框架时,将在它找到的第一个包含 SDK 的 PATH 变量条目处停止。因此,如果您安装的第一个版本使用了不正确的体系结构,那么您必须先调整这些条目的位置,然后任何正确的 SDK 才会出现在 Target Framework 下拉列表中。
来源:this absurdly-hard-to-find comment within issue #8309.
TL;DR:确保您在列表中看到的路径变量中的第一个 "C:\Program Files\dotnet\" 条目与您的系统架构匹配:
- 64 位 =
C:\Program Files\dotnet\
- 32 位 =
C:\Program Files (x86)\dotnet\
我遇到过类似的问题。然后我刚刚将我的 Visual Studio 2017 更新到 15.9.16 版本并重新启动了系统。问题已解决。
我遇到了类似的问题,我卸载了 .Net Core 2.2 运行时,然后从下面 link:
https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral
安装 .Net Core 2.2 Visual Studio SDK,重新启动 Visual Studio 我的问题得到解决,.Net Core 2.2 现在列在 [= 项目属性的目标框架列表中17=] 2017 版本 15.9.16
我在.net core 2.1下创建了一个新项目,没问题,但在我的旧项目中没有出现。所以我打开了两个“.cproject”文件并将它们放在一起进行比较,发现了问题。
在文本编辑器中打开项目的“.cproject”文件,然后替换下面的行
<TargetFramework>netstandard2.1</TargetFramework>
这个:
<TargetFramework>netcoreapp2.1</TargetFramework>
我已经安装了VS2017 Enterprise 15.6.4
。最近从 official site
.NET Core 2.1.101 SDK
如果我创建控制台或 asp.net 核心应用程序,我希望 .NET Core 2.1
作为可用的目标框架之一。有人可以帮助我了解我在这里缺少的东西。
按照评论中的建议,我安装了 15.7 预览版 2。仍然没有运气和同样的问题。
我遇到了同样的问题。我通过使用 Runtime for .NET Core 2.1 安装正确的 SDK 解决了这个问题。
基本上 run/create VS Preview 的 2.1 项目,您需要安装“2.1.300”(不是 2.1.4).NET Core SDK 和运行时。 https://www.microsoft.com/net/download/dotnet-core/sdk-2.1.300-preview1(这已经包括所需的运行时)
我在这里 https://github.com/dotnet/cli/issues/8309(dasMulli 于 2 月 24 日发表评论)对这种误导性版本的很好解释。
万一这对其他人有帮助...安装 VS 15.9.2 后,我在 2.2 preview-3 上运行良好的项目停止工作。 VS 无法看到预览版 SDK。我可以使用 dotnet.exe 而不是 VS 构建解决方案。
为了解决这个问题,我在这个解决方案的根文件夹中创建了一个 global.json 指向预览 sdk。这允许 VS 看到预览版本。
这是 15.8.x 和 15.9.x.
之间的 VS 行为变化要创建 global.json,您可以导航到所需的文件夹并键入:
dotnet new globaljson
我遇到过类似的情况,我尝试安装 dot net 的预览版,但没有帮助。 但是在我更新 visual studio (从 15.8 到 15.9.6 )之后。 我可以在目标框架中看到 dot net core 2.1。
确保 Visual Studio 2017 是最新的。前往 "Tools" -> "Extensions and Updates" 安装 visual studio 更新。这为我解决了问题。
已更新到最新的 VS 2017 并安装了最新的 .Net Core SDK。 将 global.json 更改为指向已安装的最新版本。 这为我解决了。
确保 dotnet PATH 变量的顺序正确
如果您为不同的系统架构安装了 SDK(例如,如果您在 64 位计算机上安装了 32-bit/x86 SDK),那么 PATH variable 中的新条目将已为该特定位置创建(例如,C:\Program Files\dotnet
或 C:\Program Files (x86)\dotnet
)。
问题 是 Visual Studio,在搜索已安装的框架时,将在它找到的第一个包含 SDK 的 PATH 变量条目处停止。因此,如果您安装的第一个版本使用了不正确的体系结构,那么您必须先调整这些条目的位置,然后任何正确的 SDK 才会出现在 Target Framework 下拉列表中。
来源:this absurdly-hard-to-find comment within issue #8309.
TL;DR:确保您在列表中看到的路径变量中的第一个 "C:\Program Files\dotnet\" 条目与您的系统架构匹配:
- 64 位 =
C:\Program Files\dotnet\
- 32 位 =
C:\Program Files (x86)\dotnet\
我遇到过类似的问题。然后我刚刚将我的 Visual Studio 2017 更新到 15.9.16 版本并重新启动了系统。问题已解决。
我遇到了类似的问题,我卸载了 .Net Core 2.2 运行时,然后从下面 link:
https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral
安装 .Net Core 2.2 Visual Studio SDK,重新启动 Visual Studio 我的问题得到解决,.Net Core 2.2 现在列在 [= 项目属性的目标框架列表中17=] 2017 版本 15.9.16
我在.net core 2.1下创建了一个新项目,没问题,但在我的旧项目中没有出现。所以我打开了两个“.cproject”文件并将它们放在一起进行比较,发现了问题。
在文本编辑器中打开项目的“.cproject”文件,然后替换下面的行
<TargetFramework>netstandard2.1</TargetFramework>
这个:
<TargetFramework>netcoreapp2.1</TargetFramework>