如何解决在 Visual Studio 2019 中找不到 .NET 5.0 Console App 项目模板
我目前正在尝试在 Visual Studio 2019 中创建 C# .NET 5.0 控制台应用程序,但该选项没有像我预期的那样出现在项目模板下。
我下载了 Visual Studio Professional 2019 版本 16.9.4(来自 https://visualstudio.microsoft.com/downloads/)并选择了所有要安装的工作负载,然后我安装了 SDK 5.0.202、ASP.NET Core Runtime 5.0.5、.NET Desktop Runtime 5.0.5 和 .NET 运行时 5.0.5(来自 https://dotnet.microsoft.com/download/dotnet/5.0)。
当我转到 File -> New -> Project 并搜索“Console Application”时,C# 没有默认的“Console Application”项目模板。我能找到的最接近的是 C#、VB 和 F# 的“控制台应用程序(.NET 框架)”和 C++ 的“控制台应用程序”。如果我为 C# 选择“Console Application (.NET Framework)”,我可以选择的最新框架是“.NET Framework 4.8”。
实际结果:项目模板
实际结果:框架
我和一个没有遇到这个问题的开发者对比了笔记,他们在C#选择“Console Application (.NET Framework)”时看到同样的框架限制,但也能看到项目模板“Console”应用程序”(不带“.NET Framework”)并按预期选择“.NET 5.0(当前)”作为目标框架。他们安装和更新的内容似乎没有明显不同,我们对命令提示符命令“dotnet --info”的结果匹配,并且他们在“关于”或“单个组件”下没有列出任何“已安装的产品”我缺少的安装程序。
预期结果:项目模板
预期结果:框架
我尝试卸载并重新安装所有内容,彻底安装每个工作负载以及看起来可能相关的其他单独组件,并确保“工具 -> 选项 -> 环境 -> 预览功能 -> 显示所有 .NET Core新项目对话框中的模板(需要重新启动)”复选框被选中。
有谁知道我错过了哪一步阻止我使用 .NET 5.0 在 C# 中创建控制台应用程序项目模板?
解决方法
背景 -- 此更改/破坏,Microsoft 故意选择的问题您可以阅读更多 here 和 issue reported here,但您可以使用下面列出的 2 个选项解决此问题,即 A) 启用它 或者 B) 通过修复工具将它添加到 VS
建议清除 VStudio 缓存的 -- 在重新/启动 VS 之前杀死 dev process
和 clear cache
在powershell中以admin身份运行这个cmd
Get-Process devenv | Foreach-Object { $_.CloseMainWindow() | Out-Null }
然后DELETE
ItemTemplatesCache,ProjectTemplatesCache 文件夹ent。教授等等。C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE.
现在请继续执行这些步骤/选项
-
选项 1:您可能需要
enable
此选项...
Tools > Options > Preview Features > “Show all .NET Core templates in the New project dialog (requires restart)”.
-
选项 2:
Install
viaVisual Studio Installer
像这样..
您可以使用修复 VS 安装缺少的工作负载(这也将更新安装程序),并确保检查您选择的可选包想要使用 VS 安装程序工具,请参阅 this
安装程序开始后,检查是否为桌面和控制台选择了 .NET Core 工作负载......如下所示......在右侧窗格中,您需要选中正确的框
清除 Visual Studio 组件缓存(和可选的所有模板)
现在,如果您已经按照上述步骤操作,那么验证您是否选中了 Visual Studio 安装程序中右上角的“.net-Desktop development”复选框:删除缓存并恢复强>
即您可以在 VS2017/2019 中restore the template
,然后再试一次。
杀死开发进程首先运行这个Get-Process devenv | Foreach-Object { $_.CloseMainWindow() | Out-Null }
请参考以下步骤:
-
DELETE
ItemTemplatesCache
、ProjectTemplatesCache
文件夹Ent.
或Prof
。版本等。C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE.
&C:\Users\<USERNAME>\AppData\Local\Microsoft\VisualStudio\16.0_93de0ddd
- 在命令提示符中,导航到 devenv.exe 的位置。此文件位于 \Common7\IDE。
- 键入/运行此命令
devenv /installvstemplates
并按 Enter。
仅供参考 - 您的 templates cache 在这里,包含以模板文件夹中存档中的 zip 文件命名的文件夹。
您将需要具有编辑权限的管理员权限/delete
。
%AppData%\Microsoft\VisualStudio\{some_version}\ItemTemplatesCache\
//用于验证、修复/重新安装或删除的模板路径
%USERPROFILE%\Documents\Visual Studio 2019\Templates\ProjectTemplates
%USERPROFILE%\Documents\Visual Studio 2019\Templates\ItemTemplates
%ProgramFiles(x86)%\Microsoft Visual Studio\2019\<edition>\Common7\IDE\ItemTemplates\
%ProgramFiles(x86)%\Microsoft Visual Studio\2019\<edition>\Common7\IDE\ProjectTemplates\
选项 3: 调试您的环境。 Template Config folder
检查/诊断版本:
运行这个dotnet --version
安装正确的核心版本 https://dotnet.microsoft.com/download/dotnet/5.0
多 here
此 dotnet new -u
会告诉您安装了哪些模板,您可以使用修复工具卸载、清除包缓存、重新启动和重新安装。
下载并运行 collect.exe
- https://aka.ms/vscollect - 并在 github 上与 MS 共享在 %TEMP%\vslogs.zip 中创建的日志文件
仅供参考 - 这就是您在 Visual Studio 中的模板文件夹结构的样子。
└───mytemplate
│ console.cs
│ readme.txt
│
└───.template.config
template.json
,
最终手动或使用 this extension 清除 MEF 组件缓存。
但很可能是 C:\Users\USERNAME\AppData\Local\Microsoft\VisualStudio\16.0_93de0ddd
处的用户缓存出现问题,其中特别包括 InstalledTemplates.json
和 privateregistry.bin
。
在 VS 关闭时尝试重命名(或删除)文件夹(或两个提到的文件之一以缩小问题范围),然后重新启动 VS。只需确保您安装了正确的工作负载和来自 VS 的 .net 5。
,虽然很难判断 VS 或本地环境到底有什么问题,但应该可以使用 dotnet cli 临时创建项目:
dotnet new console --output <project-dir>
如果您想将其添加到现有解决方案运行中
dotnet sln <solution-name>.sln add <project-dir>
控制台应用程序项目文件非常简单,因此您甚至可以手动创建它,或从任何现有模板创建项目并使用以下解决方法替换内容:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
</Project>
也许您可以尝试的另一件事是以管理员身份运行 VS 安装程序或确保它可以安装和访问所有必需的组件。
,当我看到你的帖子时,我有 VS 2019 版本 16.9.5。我正在为我的示例项目使用控制台应用程序。我已经尝试过并且能够实现您正在寻找的东西。我建议您将 VS 更新到 16.9.5 并尝试一下。
我的 VS 2019 版本:
在 VS 2019 16.9.5 中创建控制台应用:
最终它创建了一个目标框架为 .net 5.0 的控制台应用项目
,我检查过,我能够使用 Visual Studio 16.9.2 版和 SDK 5.0.201 版创建 dotnet5.0 控制台应用程序。我认为您那边存在一些安装冲突。您可以尝试卸载SDK并重新安装visual studio或将其更新到最新版本并下载最新的SDK。还要检查 SDK 是否安装在您的系统上
C:\Program Files\dotnet\sdk[您的 SDK 版本]\
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。