.NET编译器平台SDK与`C#和Visual Basic Roslyn编译器`

.NET编译器平台SDK与`C#和Visual Basic Roslyn编译器`,.net,roslyn,.net,Roslyn,在我的Visual Studio 2017--15.8.5中的“单个组件”选项卡上,我有两个编译器或至少两个复选框。老实说,即使我有很多时间使用VS,我也不知道这两个编译器的区别。我用谷歌搜索了一下,但我还没有找到一个明确的解释,说明什么是第一个或第二个,以及这两者的区别 我想扩展我在.Net中的知识,这对我会有很大的帮助。编译器就是那些只想把你的代码编译成.Net中的IL的人。在编译过程中,编译器为输入代码构建了两种不同的表示:AST、语义模型等,以便在代码下应用不同的分析 NET编译器平台

在我的Visual Studio 2017--15.8.5中的“单个组件”选项卡上,我有两个编译器或至少两个复选框。老实说,即使我有很多时间使用VS,我也不知道这两个编译器的区别。我用谷歌搜索了一下,但我还没有找到一个明确的解释,说明什么是第一个或第二个,以及这两者的区别


我想扩展我在.Net中的知识,这对我会有很大的帮助。

编译器就是那些只想把你的代码编译成
.Net中的
IL
的人。在编译过程中,编译器为输入代码构建了两种不同的表示:AST、语义模型等,以便在代码下应用不同的分析

NET编译器平台SDK提供对编译器构建的模型的访问、API,使用户可以构建自定义分析器、代码修复和许多其他改进,而不是。顺便说一句,sdk有两个附加API,例如用于项目系统的API,它不是由编译器构建的模型,而是由构建系统(MsBuild)构建的,并且包含一些有用的东西,帮助用户编写自定义分析器:SyntaxVisualizer、模板等等。有关SDK的更多详细信息,请参见