【问题标题】:Can MS .NET 4.6 be used with Visual Studio 2010MS .NET 4.6 可以与 Visual Studio 2010 一起使用吗
【发布时间】:2016-01-27 12:13:28
【问题描述】:

我们仍在使用 VS 2010 SP1 开发大型 LOB ASP.NET Web 应用程序。基础架构人员正在考虑将 .NET 4.6(以及面向开发人员的目标包)推送到桌面,但我无法找到与 VS 2010 兼容的任何内容。这里的一位负责人表示,两者不兼容,不能一起使用,并且您必须拥有 VS 2012 或更高版本,但我找不到有关该主题的任何官方信息。有人知道是否可以使用 .NET 4.6 和 VS 2010 SP1 进行开发?

【问题讨论】:

  • 你为什么要坚持 2010 年而不是升级到更高版本?
  • 这是时间问题,计划是退出 VS 2010,但不是在企业计划推动 .NET 4.6 之前。

标签: asp.net .net visual-studio-2010 .net-4.6


【解决方案1】:

Wiki 包含 Visual Studio 及其支持的 .net 版本的交叉引用。 MS Visual Studio History

每个新版本的 .NET 都附带的不仅仅是一个新的编译器。还添加了新的工具、项目,甚至 IDE 功能。如果你必须使用 4.6 的功能,你也应该考虑升级你的 VS。

【讨论】:

  • 感谢您的回复-
  • 我的问题涉及向后兼容性,而不是希望实现 .NET 4.6 中添加的新功能,不幸的是,wiki 只是重申了发布时的营销材料。我们目前正在使用 .NET 4.5.2 并在 VS2010 上成功定位 .NET 4,但是当 4.6 取代 .NET 4.5.2 时出现了一些问题,我目前无法确定原因,这就是为什么我发布这个问题希望有人来自Visual Studio 团队可能会接受它 - 再次感谢。
【解决方案2】:

Visual Studio 确实支持多目标。例如,如果我使用 Visual Studio 2012,我可以安装 4.6 多目标包来开发 4.6 应用程序。

但是,4.6 多目标包的 download instructions 并未提及对 Visual Studio 2010 的支持,仅支持 2012 和 2013:

.NET Framework 4.6 Targeting Pack 是一个包,它使开发人员能够使用 Visual Studio 2013、Visual Studio 2012 或第三方 IDE 构建面向 .NET Framework 4.6 的应用程序

这与我找到的任何文档一样接近。这让我相信,不,Visual Studio 2010 不支持 4.6 多目标。

【讨论】:

  • 我担心你是对的 - 很高兴能从 Microsoft 获得明确的答复,特别是因为对 4.5.1 的支持将于 1 月结束
  • @user5495678 我联系了一些微软人员,看看我是否可以让他们写一个规范的答案。
【解决方案3】:

Visual Studio 2010 支持 4.6 定位包。将目标包推送到计算机后,Visual Studio 2010 将看不到它。

现在,如果您想继续使用受支持的 .NET 版本,这实际上不是问题(这可能是您的基础架构人员正在做他们正在做的事情的原因),因为即使您的目标是 4.0,您也可以继续使用通过部署 4.6 并在其上运行您的 4.0 应用程序来支持。在这种情况下,我们会填充 4.0 的行为,因此当您在只有 4.0 的机器上进行测试时,可以保证应用程序将在 4.6 上以高可信度运行。

但是,我看到开发人员经常遇到的情况是,当他们以 4.0 为目标时,test 在安装了 4.6 的机器上,然后期望能够部署到 4.0 并运行.在这种情况下,不能 100% 保证这会起作用,因为我们不会对每个错误修复和/或功能进行填充。这意味着您可能会意外地选择 4.6 行为并依赖它。

总结一下:

  • 如果您以 4.0 为目标,请在 4.0 上进行测试并部署到 4.0/4.6 -> 我们保证这很有信心。

  • 如果您以 4.0 为目标,请在 4.6 上进行测试并部署到 4.6 -> 我们保证这很有信心。

  • 如果您以 4.0 为目标,则在 4.6 上进行测试并部署到 4.0 -> 这在大多数情况下都有效,但您可能会不小心依赖于 4.0 上未修复的“固定行为”。

【讨论】:

  • 注意:David 在 Microsoft 工作,这是您可以获得的最权威的答案。
  • 谢谢大卫 - 感谢您的回复
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-12
相关资源
最近更新 更多