microsoft.net.compilers包中有哪个版本的编译器?

时间:2017-03-03 16:11:00

标签: c# .net

microsoft.net.compilers包的文档(位于https://www.nuget.org/packages/Microsoft.Net.Compilers/)说

  

.Net Compilers包。引用此包将导致   使用特定版本的C#和Visual构建的项目   包中包含的基本编译器,而不是任何系统   已安装的版本。

...这引出了一个问题:包中有哪个版本的编译器?

同一页面说它支持.NET framework 4.5,但这不是编译器版本,是吗?

该软件包有多个版本。我假设包的不同版本可能包含不同版本的编译器。是否有某个表指定每个包版本中的哪个编译器版本?

我猜这个软件包包含c#和vb编译器,但我只对c#感兴趣。

1 个答案:

答案 0 :(得分:7)

  • 版本1.x表示C#6.0(Visual Studio 2015和更新)。例如,1.3.2对应于Visual Studio 2015的最新更新(更新3)。
  • 版本2.0表示C#7.0(Visual Studio 2017版本15.0)。
  • 版本2.1仍然是C#7.0,但有一些修复(Visual Studio 2017版本15.1)。
  • 2.2版仍然是C#7.0,但还有一些修复(Visual Studio 2017版本15.2)。
  • 版本2.3表示C#7.1(Visual Studio 2017版本15.3)。
  • 版本2.4仍然是C#7.1和VB 15.3,但有一些修复(Visual Studio 2017版本15.4)。
  • 版本2.6表示C#7.2和VB 15.5(Visual Studio 2017版本15.5)。
  • 版本2.7表示C#7.2和VB 15.5,但有许多修复(Visual Studio 2017版本15.6)。
  • 版本2.8表示C#7.3(Visual Studio 2017版本15.7)
  • 版本2.9仍然是C#7.3和VB 15.5,但有更多修复(Visual Studio 2017版本15.8)

来源:https://github.com/dotnet/roslyn/wiki/NuGet-packages

有关语言功能,请参阅https://github.com/dotnet/csharplang/blob/master/Language-Version-History.md