您需要同时安装 .net 3.5 和 4.0 还是只需要 .net 4?

Posted

技术标签:

【中文标题】您需要同时安装 .net 3.5 和 4.0 还是只需要 .net 4?【英文标题】:Do you need both .net 3.5 and 4.0 installed or just .net 4? 【发布时间】:2011-02-08 04:42:23 【问题描述】:

同时运行 3.5 和 4.0 网络应用程序?

【问题讨论】:

【参考方案1】:

我记得曾经从微软那里读到过一段话:

".NET 4.0 并排添加进程内 与早期版本的兼容性 框架。此功能允许一个 申请流程同时进行 使用 .NET 运行其部分代码 公共语言运行时 (CLR) 4 和 其他部分使用旧版本的 CLR。”

因此,如果您的应用程序同时使用两者的功能,或者您有使用 .NET 3.5 和 .NET 4.0 的单独 Web 应用程序,那么要回答您的问题,您只需要两者都需要。

.NET 4.0 本身应该没问题,只要您可以将 3.5 应用程序升级到 4.0。 This page 有一些有用的信息。

Heres where我看了。

【讨论】:

asp.net 不会在同一进程中并排使用 3.5 和 4.0,而 4.0 几乎提供了 3.5 的所有功能(除了一些兼容性例外,如 j#) @Pent,说得好,我想我实际上是在回答一个不同的问题。 似乎暗示你需要安装3.5和4.0 我会接受这几乎是与其他一堆废话的正确答案:) 来自msdn.microsoft.com/en-us/library/bb822049.aspx:“为 2.0、3.0 和 3.5 版本构建的应用程序都可以在 3.5 版本上运行,但它们不能在 4 或更高版本上运行。”【参考方案2】:

http://msdn.microsoft.com/en-us/magazine/ee819091.aspx

看来你需要并排安装。

【讨论】:

【参考方案3】:

我发现我需要 3.5,即使我安装了 4 个。如果没有 3.5,我会收到 GfxUI 已停止工作错误。尽管为 G41 芯片组安装了最新的英特尔驱动程序,但该错误仍然存​​在。然后我发现一个帖子说它需要.net3.5,一旦我安装了它,我就没事了。所以......如前所述,这完全取决于您安装的应用程序。如果他们需要 3.5,那么您需要同时安装两者。

【讨论】:

【参考方案4】:

只有 4.0 就足够了,但可能存在一些问题 - 例如 J# 不适用于 .net 4.0

【讨论】:

我想要一些比“应该”更明确的东西。这就是我问这个问题的原因......我在想“它应该工作......”但不是真的 100% .NET 4.0 中似乎还有关于反射安全的新限制。在依靠 .NET 4.0 运行 .NET 3.5 应用程序之前,您可能需要在 .NET 4.0 和 .NET 3.5 系统中进行测试。【参考方案5】:

再多加一点...

4.0 [4.0 CLR](是的,甚至 3.5.1)之前的所有框架都基于 2.0 CLR。 Microsoft 已尽一切努力使 4.5 [4.5 CLR] 成为“无缝”就地升级(或服务 [如果不是功能] 包)。

就像上面提到的另一位精明的评论一样,如果您对 3.5.1 有无法转换的依赖项,那么选择会更加有限。有谁知道实体和 LINQ 堆栈是否已从 3.5.1 框架完全过渡?我假设它有,但不确定。

另一个注意事项...只需在某些服务器上安装 4.5...使用 MOSS2K7、SP2010 服务可能会很有趣... ;-o

【讨论】:

以上是关于您需要同时安装 .net 3.5 和 4.0 还是只需要 .net 4?的主要内容,如果未能解决你的问题,请参考以下文章

安装.net framework 4.0 是不是需要.net framework 3.5?

装了net framework高版本,还需要装低版本么

xp64位系统安装啥版本net.framework

WCF 与 3.5 和 4.0 一起使用

.Net Framework 4.0 安装程序是不是包含 .Net Framework 3.5?

WiX 在具有 .NET 3.5 的机器上安装 .NET 4.5,但不在具有 .NET 4.0 的机器上