哪个版本的框架正在运行*和哪个版本的运行时正在运行*之间的区别是什么?

本文关键字:运行 版本 是什么 区别 运行时 框架 之间 | 更新日期: 2023-09-27 18:18:54

在这篇文章中,@kbrimington提到在哪个版本的框架运行哪个版本的运行时运行之间有一个微妙的区别。

到底有什么不同?

哪个版本的框架正在运行*和哪个版本的运行时正在运行*之间的区别是什么?

下面是一个快速分析,可能会给您提供所需的信息。这可能令人困惑,但值得你花时间了解这三者之间的区别,以及它们的区别和相互关系。

CLR    .NET    C#  
----   ----    ----  
1.0    1.0     1.0  
1.0    1.1     1.0  
2.0    2.0     2.0  
2.0    3.0     3.0  
2.0    3.5     3.0  
4.0    4.0     4.0  
4.0    4.5     5.0

. net框架是描述可用类的框架。所以框架的版本会告诉你哪些类是可用的。

运行时(CLR)是执行代码的部分,它是一个虚拟机,将编译后的应用程序(MSIL)转换为可以在主机操作系统上执行的字节码。

在Visual Studio 2008或2010中开发时,您可以选择使用。net框架的哪个版本。这被称为多目标,如这里和这里所解释的:

Visual Studio的多目标特性允许您指定应用程序所需的。net框架的特定版本或配置文件。多目标的主要好处是,您可以使用当前版本的Visual Studio来创建和开发针对。net框架早期版本的项目。例如,您可以继续开发在Visual Studio 2005和Visual Studio 2008中创建的项目,而无需添加新的。net框架依赖项。多目标有助于保证应用程序只使用在指定的。net框架版本中可用的功能。此外,多目标可以让你继续部署旧的应用程序,而不需要在你的部署包中添加一个新的。net框架版本。

在Visual Studio 2008中使用。net 3.5编译的应用程序将使用与在Visual Studio 2010中使用。net 3.5编译的应用程序不同的运行时版本。

这意味着,当你支持或增强用旧版本的。net或Visual Studio编写的应用程序时,你仍然可以在新版本的Visual Studio中进行开发,利用新功能。

重要的是。net版本是并行安装还是更新现有版本。版本1.0、1.1、2.0和4.0是并行版本。3.0、3.5、3.5 sp1和即将发布的4.5是对现有的2.0和4.0版本的更新。并使用相同的CLR版本,运行时版本你正在询问。更新增加了额外的程序集。否则,您不能同时安装2.0和3.0,3.0更新将替换2.0。获取更新版本的唯一方法是读取注册表,如您链接的问题所示。