如何为 .NET 6 创建 VSIX 模板

问题描述 投票:0回答:2

我创建了一个包含 4 个项目的解决方案。其中一个是

VSIX project
,另一个是
Project Template
,其中两个是
Item template
。我想创建 VSIX,因为所有团队都使用它。从 Visual Studio 直接导出项目模板工作正常,但对于团队工作来说这不是一个好的解决方案。

我在我的项目中使用 C# 10 版本。我想创建此模板以针对 C# 10 语言版本。但是列表中只有 .NET Framework 4.8。所以在这种情况下,我不能使用记录类型或其他新东西。

如何为 .NET 6 创建 Visual Studio 扩展?我如何瞄准这个目标还是有其他方法?

我使用 Visual Studio 2022。

visual-studio visual-studio-2022 vsix
2个回答
0
投票

Visual Studio 2022 针对 .NET Framework,因此您无法编写针对 .NET 6 的 VSIX 并将其安装到 VS2022 中。

也就是说,如果您想在 .NET Framework 项目中使用较新的 C# 功能,您可以创建一个 SDK 样式的项目并手动更改

.csproj
文件以具有
TargetFramework
net472
并将
LangVersion
设置为
10 
或者任何你喜欢的。虽然这可行,但 Microsoft 不支持这种情况。

请注意,对于 VSIX 项目,目前这工作起来有点棘手。可以在here找到一个示例,但是这是一个相当复杂的构建,因此需要对 MSBuild 有很好的熟悉程度才能将其用作参考。

增加语言版本后,您还需要类似 https://www.nuget.org/packages/IsExternalInit 的内容来使记录类型针对 .NET Framework 正确编译。


0
投票

我最近发现了一个名为 vsixtool.com 的工具,它可以节省大量从项目结构创建 vsix 扩展的麻烦,但在它的免费版本中,仅限于 1 个自定义模板和每月一些构建

© www.soinside.com 2019 - 2024. All rights reserved.