我进行了一些搜索,我想知道 .NET 框架是否具有向后兼容性。
真正的问题是,如果有一个使用 .NET Framework 1.1 的程序,我可以安装 3.5 并完成,还是我必须安装 1.1,然后如果使用 3.5,我也必须安装 3.5?
我进行了一些搜索,我想知道 .NET 框架是否具有向后兼容性。
真正的问题是,如果有一个使用 .NET Framework 1.1 的程序,我可以安装 3.5 并完成,还是我必须安装 1.1,然后如果使用 3.5,我也必须安装 3.5?
不幸的是,您将不得不安装这两个版本。旧版本的框架不会自动与新版本捆绑在一起。
我相信如果你安装了 3.5 框架,你会得到一切回到 2.0 框架。3.5(和 3.0)框架在 2.0 CLR 上运行,因此您真正获得了 2.0 运行时,并在其之上具有 3.0 和 2.5 的额外优点。
您必须单独安装 1.1 框架。
您可以在此处查看已安装的版本:C:\Windows\Microsoft.NET\Framework
如果您安装的东西需要 3.5,那么您将不得不安装它。不过,.Net 的工作方式是,您可以同时安装 1.1、2.x 和 3.5。程序指定它们需要的框架版本,并为它们加载该版本。
尤其是在 .NET 2.0 中,.NET 框架中的许多东西都发生了变化(不仅在语言级别)。您将需要 1.1 版才能运行与该版本链接的程序。
现在,如果您的程序的某些部分使用 .NET 3.5,并且您可以访问所有源代码,我建议您将整个应用程序移植到 .NET 3.5 并完成它。这会让你花更长的时间,但向前迈进是值得的。
许多(也许是大多数)为 .NET 1.1 构建的应用程序将在更高版本的框架上运行。
但是有一些重大更改,因此要确定您为 .NET 1.1 构建的应用程序是否可以在 .NET 2.0 或更高版本上运行的唯一方法是对其进行测试。
Microsoft 记录了 .NET 1.1 和 .NET 2.0 之间已知的重大更改(请参阅http://blogs.msdn.com/brada/archive/2005/11/14/492561.aspx) - 但此内容的链接似乎是破碎的 :(
而且我知道至少有一个由于错误而导致的未记录的重大更改。