.NET Framework、CLR和Visual Studio版本号之间有什么关联?

59

随着.NET 4.0和Visual Studio 2010的最新发布,跟踪.NET Framework版本在哪个CLR版本上构建以及属于哪个(些)Visual Studio版本变得越来越困难。

是否有一张明确的表格显示这些关系呢?

4个回答

66
Visual Studio CLR .NET Framework ---------------------------------------------------------------------------------------- Visual Studio .NET (Ranier) 1.0.3705 1.0 Visual Studio 2003 (Everett) 1.1.4322 1.1 Visual Studio 2005 (Whidbey) 2.0.50727 2.0 Visual Studio 2005 with .NET 3.0 Extensions 2.0.50727 2.0, 3.0 Visual Studio 2008 (Orcas) 2.0.50727 2.0 SP1, 3.0 SP1, 3.5 Visual Studio 2008 SP1 2.0.50727 2.0 SP2, 3.0 SP2, 3.5 SP1 Visual Studio 2010 (Hawaii) 4.0.30319 4.0
扩展一下,并包括dok1回答中的一些信息,.NET Framework不同发布版本的实际版本号可以在Aaron Stebner的博客上找到blog,该博客涵盖了从1.0到3.5 SP1的所有内容。
实际的Visual Studio版本号为:
产品名称 版本 发货日期 ---------------------------------------------------------------------------------------- Visual Studio .NET 7.0.?? 02/2002 Visual Studio .NET 2002 Service Pack 1 7.0.?? Visual Studio 2003 7.1.?? 04/2003 Visual Studio 2003 Service Pack 1 7.1.6030 09/13/2006 Visual Studio 2005 8.0.5072.42 Visual Studio 2005 Service Pack 1 12/14/2006 Visual Studio 2008 9.0.21022.8 11/19/2007 Visual Studio 2008 SP1 9.0.30729.1 Visual Studio 2010 10.0.30319.1 04/12/2010 Visual Studio 2010 SP1 10.0.40219.1 03/03/2011

3
Framework 4.0将在CLR 4.0上运行(不支持CLR 3.x),与CLR 1.1和2.0并行存在。 - Lucas
Visual Studio 2010的代号是Dev10。Visual Studio 2010 Ultimate的代号是Rosario。 - H A
FYI,VS 2008版本9.0.30729.4462 QFE似乎是与SQL 2008 R2 SP2捆绑的版本。 - influent

34
请注意,虽然3.0基本上只添加了新的程序集(相同的CLR),但3.5添加了新的程序集、新的编译器,并将CLR更新到SP1级别。
框架4.0将是一个全新的CLR(4.0,没有CLR 3.x),它将与CLR 1.1和2.0并行运行。它还将具有全新的程序集版本为4.0,而不是使用2.0程序集。
框架  CLR 和程序集            发布
----------------------------------------------------------
1.0 RTM    1.0.3705.0                    Visual Studio .NET (又名 VS.NET 2002)
1.0 SP1    1.0.3705.209
1.0 SP2    1.0.3705.288
1.0 SP3    1.0.3705.6018
1.1 RTM 1.1.4322.573 VS.NET 2003 1.1 SP1 1.1.4322.2032 1.1 SP1 1.1.4322.2300 Windows Server 2003
2.0 RTM 2.0.50727.42 Visual Studio 2005 RTM 2.0 RTM 2.0.50727.312 Windows Vista 2.0 SP1 2.0.50727.1433 Visual Studio 2008 RTM 和 .NET 3.5 RTM 2.0 SP2 2.0.50727.3053 Visual Studio 2008 SP1 和 .NET 3.5 SP1 2.0 SP2 2.0.50727.4016 Windows Vista SP2 和 Windows Server 2008 SP2 2.0 SP2 2.0.50727.4927 Windows 7
框架 CLR 新程序集 ---------------------------------------------------------- 3.0 RTM 2.0 RTM 3.0.4506.30 唯一的“非SP”的框架发布 3.0 SP1 2.0 SP1 3.0.4506.648 Visual Studio 2008 RTM 和 .NET 3.5 RTM 3.0 SP2 2.0 SP2 3.0.4506.2123 Visual Studio 2008 SP1 和 .NET 3.5 SP1
3.5 RTM 2.0 SP1 3.5.21022.8 Visual Studio 2008 RTM 和 .NET 3.5 RTM 3.5 SP1 2.0 SP2 3.5.30729.01 Visual Studio 2008 SP1 和 .NET 3.5 SP1 3.5 SP1 2.0 SP2 3.5.30729.4926 Windows 7
框架 CLR 和程序集 发布 ---------------------------------------------------------- 4.0 RTM 4.0.30319.1 Visual Studio 2010

这些内容收集自多个答案和相关文档,尤其是由DOK链接的MSDN文章如何确定已安装哪些版本和服务包级别的Microsoft .NET Framework。完整的KB更新版本列表和支持退役日期可在维基百科上找到,.NET Framework版本列表


你能确认这是否映射到3.5 SP1,并永久保持列表完整准确吗? - Ruben Bartelink
@Ruben:2.0.50727.3615 似乎是一个安全更新(http://support.microsoft.com/kb/983583)。我猜测任何高于“发布”版本的版本都是非 SP 更新。 - Lucas
我已经添加了一些特定于操作系统的版本(Vista,Win7)和完整的4.0版本号。 - Lucas

7

很难找到,不是吗?我相信这些是版本(忽略服务包)

  • Visual Studio版本6 = .NET之前的最后一个版本,发布于1998年
  • Visual Studio 2002 = 版本7.1,Rainier,第一个.NET版本在名称中添加了2002,.NET 1.0 - 于2002年2月发布
  • Visual Studio 2003 = 版本7,Everett,.NET 1.1 - 于2003年初发布。
  • Visual Studio 2005 = 版本8 Whidbey,.NET 2.0和3.0 - 发布日期为2005年11月。不再称为Visual Studio .NET
  • Visual Studio 2008 = 版本9 Orcas,.NET 3.5 - 于11/19/2007发布为9.0.21022.8
  • Visual Studio 2010 = 版本10 Hawaii

Visual Studio Team System的下一个版本是Rosario。

如何确定安装了哪些版本和服务包级别的Microsoft .NET Framework将为您提供有关生成编号和服务包的更多信息,但仅适用于.NET 2.0。


虽然您没有指示CLR版本,只有.NET Framework版本,但这仍然是一个很棒的列表,特别是因为您包括发布日期和实际的Visual Studio版本号。但不完全符合我的期望。 - Scott Dorman
1
CLR版本在链接的文档中。它们因服务包而异。但是,仅通过快速网络搜索查找所有这些信息仍然是不必要的困难,不是吗? - DOK
是的,在一个地方找到所有这些信息非常困难...这也是发布帖子的原因。 - Scott Dorman

0

框架 4.0 RTM

Visual Studio 2010

程序集版本 4.0.30319

日期 2010年4月12日


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接