【问题标题】:NET Framework Version compatibility for Visual Studio PackageNET Framework 版本兼容性,适用于 Visual Studio 包
【发布时间】:2019-06-16 05:59:39
【问题描述】:

我有一个 Visual Studio 包,目前针对 .NET Framework 4.5 版,可与 2012 年至 2019 年的 Visual Studio 版本配合使用。

如果我升级到 .NET Framework 4.7.2,这对与不同版本的 Visual Studio 的兼容性意味着什么?

它会自动使包与旧版本的 Visual Studio(例如 2012、2013 和 2015)不兼容吗?

【问题讨论】:

  • 不,可能不是。除非该程序员不允许 Windows Update 保持其框架版本的更新,否则这并不是您想要的那种客户。为什么要针对维护版本? 4.7.2 不添加任何对扩展至关重要的内容。你只会这样做,因为你依赖于错误修复。
  • 在这种情况下,这是因为我引用了一个使用 4.7.2 的 NuGet 包。
  • 嗯,这将是另一个原因 :) 寻找更早的版本。
  • 我尝试创建一个示例来测试它,但卡住了 VS2012 无法加载 VS shell 15.0。但是,如果您知道使从更高版本创建的扩展在早期版本中工作的方法,我认为测试兼容性的一种简单方法是使用 .net4.7.2 从 VS2017 或 VS2019 编写一个简单的扩展,并让它添加 ref 到 .net 4.7.2 引用并检查它是否在 VS2012 中工作。
  • 感谢您的努力。听起来好像应该没有问题 - 只要目标机器上安装了所需的框架。

标签: visual-studio visual-studio-extensions .net-framework-version


【解决方案1】:

如果您安装特定版本的 .net 框架,您可以在目标框架中看到它。 您可以使用此地址查看所有 Visual Studio 的 .net SDK

https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral 您必须注意,如果您想在项目中使用 .NetCore,您必须拥有更新版本的 Visual Studio,例如 2017 或 2019。

【讨论】:

  • 这并不能真正回答我的问题。也许这个问题并不清楚。我是作为 Visual Studio 扩展运行的 Visual Studio 包的作者。如果我使用 .NET Framework 4.7.2 制作 Visual Studio 扩展,是否仍然可以在比框架版本 4.7.2 旧的 Visual Studio 2013 中使用此扩展?
  • 是的,可以使用它,但用户必须具有您使用该版本编写代码的 .net 框架版本。如果他们没有该版本,则在他们想要使用时上诉编译错误 from你的扩展。
【解决方案2】:

对于那些不需要比 2017 年更深的兼容性的人的答案

(但最终还是从搜索引擎来到这里的。)

检查系统要求。

例如,Visual Studio 2017 Product Family System Requirements 表示:

Visual Studio 需要 .NET Framework 4.7.2 才能运行,这将是 在安装过程中安装。

这意味着我们可以 100% 确定在定位 VS 2017 时定位 4.7.2 是安全的。

P.S.:我将向后兼容性限制在 2017 年的原因是我在旧版本的系统要求中没有看到任何提及 .NET 框架的内容,因此这种方法对针对旧版本没有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 1970-01-01
    • 2012-03-03
    • 2023-02-16
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多