为什么在较旧的框架版本中创建的软件不会在较新的框架版本上运行?
实际上每当我尝试在我的PC上运行一些具有.net 3.5框架的旧特定软件时,他们就会显示他们需要.net framwork 1.1。什么坏事?
我的较新版本的Photoshop和Ms office打开所有较低版本的文件。
答案 0 :(得分:3)
一般来说。有一些向后的不兼容性,但不是非常很多,所有事情都考虑在内。
您是否有特定的问题?
答案 1 :(得分:2)
简短的回答是“这样他们就可以添加新功能”。有时,如果不向{2}添加breaking change,就无法添加功能。
也就是说,该框架的较新版本通常会运行为旧版本编写的程序。
答案 2 :(得分:2)
.NET 1.1和.NET 2.0是不同的框架。但.NET 3.0和3.5框架是增量添加,这意味着它们依赖于.NET 2.0框架。因此,如果你有1.1中写的东西,那么你需要安装1.1。用2.0写的任何东西都可以在.NET 2.0,3.0,3.5甚至4.0的机器上正常工作(如果你喜欢冒险)。
答案 3 :(得分:1)
不运行或不编译?有区别。
答案 4 :(得分:1)
.NET平台旨在并排运行不同的版本。它不是为了向后兼容而设计的。
不同版本的CLR并行运行的能力意味着可以更加积极地更新和改进CLR,而不必担心破坏向后兼容性或在为先前版本编写的程序中创建错误。这是因为在新版本发布后,为1.1设计的应用程序仍在1.1版本上运行。
答案 5 :(得分:0)
取决于您使用的API。您也可以强制程序仅在一个框架中运行。检查app.config。