【问题标题】:Can VS 2005 build C# for .NET 4?VS 2005 可以为 .NET 4 构建 C# 吗?
【发布时间】:2010-03-04 20:59:04
【问题描述】:

我知道您可能可以构建较低版本的 .NET,但我是否可以针对 .NET 框架版本 4 构建项目?

【问题讨论】:

  • 没有人阅读现有答案吗?一大堆“不”... =P

标签: .net visual-studio-2005


【解决方案1】:

不,每个版本的 Visual Studio 只能针对与它一起发布的框架和更低版本的框架。 (将 .NET 1.1 排除在外......)所以......

  • VS2005 只能针对 .NET 2.0(以及带有一些扩展的 .NET 3.0,诚然)进行编译
  • VS2008 可以针对 .NET 2.0、.NET 3.0 和 .NET 3.5 进行编译
  • VS2010 可以针对 .NET 2.0、.NET 3.0、.NET 3.5 和 .NET 4.0 进行编译

(还有客户端配置文件、Compact Framework、Silverlight 等)

【讨论】:

    【解决方案2】:

    我认为在技术上是可以的,但肯定不容易。您可以手动自定义构建过程,以使用 .NET 4 框架中的(免费提供的)编译器。如果您想要完全集成,或者从命令行手动编译您的项目,您必须手动安装 .NET 4,然后从头开始构建您自己的构建脚本。

    不过,值得记住的是,VS2005 没有 IntelliSense 支持或 .NET 4 的编译器集成,因此您在 IDE 中不会有任何愉快的体验。记事本可能更简单!

    说实话,我不确定我是否会考虑尝试!

    【讨论】:

      【解决方案3】:

      没有。

      但是,您可以只获得.NET framework。这将为您提供必要的程序集和编译器。虽然 Visual Studio 很棒,但它不是必需的。

      【讨论】:

        【解决方案4】:

        VS 是逆向兼容的,但相反是错误的。这是一张单程票。 VS2005 仅兼容 .NET 2.0,并逆向兼容 1.1 和 1.0。

        那么,最终的答案是否定的。例如,除非您安装 Vista SP1,否则 VS2005 将无法在 Vista 上运行。

        【讨论】:

        • 您无法使用 VS2005 构建针对 1.1 和 1.0 的版本。 VS2005 在 SP1 之前确实确​​实在 Vista 上运行过,但是 IIRC 你必须在管理员模式下运行它才能使某些功能正常工作。
        • 我相信您可以在整个项目中使用 .NET 1.1 和 1.0 对象,因为任何 .NET Framework 版本本身都不是完整版本,但 .NET 2.0 有部分仍在工作 1.1,而 3.2 仍然是 2.0 的一部分。因此,我同意您不能像在 VS2008 中那样针对特定框架。至于 Vista 和 VS2005,这一定是微软报告说需要安装 Vista SP1 才能在其上使用 VS2005 的原因。
        【解决方案5】:

        不,VS2005 只能针对 .Net Framework 2.0 构建。直到 VS2008 才出现对多个运行时的支持。您可以使用 MSBee 来构建 2005 年的 1.1,但这是您可以获得的最接近多个运行时目标的版本。

        如果您使用单独的构建工具,例如 NAnt,那么您可以针对多个框架版本(包括 Silverlight 和 Mono),假设代码将针对这些框架进行编译。

        【讨论】:

          【解决方案6】:

          不,根据 Scott Guthrie(他肯定会知道)的说法,即使是 VS 2008:

          没有任何方法可以针对 .NET 4 从 VS08 开始并使用新功能。有 说,.NET4 向上兼容 使用 .NET 3.5 - 所以你的应用程序 使用 VS08 构建目标 .NET 3.5 在 .NET 上应该可以正常工作

          http://weblogs.asp.net/scottgu/archive/2009/08/27/multi-targeting-support-vs-2010-and-net-4-series.aspx

          这里有类似的问题:

          Can I develop for .NET Framework 4 in Visual Studio 2008?

          【讨论】:

            【解决方案7】:

            正如其他人所说,答案是否定的。但是......根据您想要这样做的动机,您可以考虑免费的 SharpDevelop,但没有相同的限制。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-03-07
              • 2011-06-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2023-04-05
              • 2010-12-17
              • 2010-09-18
              相关资源
              最近更新 更多