多年来,各种版本的 .NET 已通过 WSUS 部署到我的客户端计算机上。现在看来,在许多机器上,这些安装已经相互影响,并且某些 .NET 安全更新失败了。
我验证我可以运行 .NET 清理工具来摆脱客户端上的所有 .NET 安装,然后我可以通过 WSUS 推出 .NET 3.5。这似乎解决了我在尝试过的机器上遇到的问题。
所以问题是:如果我有 .NET 3.5,是否还有理由安装以前的版本?
多年来,各种版本的 .NET 已通过 WSUS 部署到我的客户端计算机上。现在看来,在许多机器上,这些安装已经相互影响,并且某些 .NET 安全更新失败了。
我验证我可以运行 .NET 清理工具来摆脱客户端上的所有 .NET 安装,然后我可以通过 WSUS 推出 .NET 3.5。这似乎解决了我在尝试过的机器上遇到的问题。
所以问题是:如果我有 .NET 3.5,是否还有理由安装以前的版本?
向后兼容是一个不好的术语。.NET 1.0、1.1 和 2.0 是它们自己的框架,彼此之间没有兼容性。.NET 3.0 和 3.5 是 2.0 框架的超级集,使用 .NET 2.0 基础框架,带有额外的 dll 来提供额外的功能(3.0 包括 WCF 和 WWF 之类的东西,3.5 有 LINQ 之类的东西)。在申请要求方面:
我相当肯定 .NET 4.0 遵循与 2.0 - 3.5 相同的模型(2.0 基础,带有附加功能 dll)。因此,安装 .NET 3.5 将涵盖 .NET 2.0 - 3.5 应用程序。如果您运行任何 1.1 应用程序(对于 1.0 应用程序也是如此),则需要安装 .NET 1.1。
.NET 在一定程度上是向后兼容的,但您必须在框架的版本之间进行比较。他们所做的是它是并行兼容的,这是您面临的问题。安装其他版本肯定是有原因的。可以编写应用程序以针对特定版本,如果计算机上不存在此版本,则应用程序将失败。
不,.net 不向后兼容。MS 保留进行更改的权利。2.0 u 到 3.5 是 IIRC,但这更像是“幸运的一面”。概念是安装了所有需要的框架,并且应用程序针对它编译的框架 - 这允许 MS 清理新版本并引入不兼容的更改。