关于c#:Roslyn和.NET Runtime版本

Roslyn and .NET Runtime version

本问题已经有最佳答案,请猛点这里访问。

是否可以在.NET运行时的旧版本(例如.NET 4.0)中使用Roslyn编译器和C 6.0的新功能?

例如,我希望在.NET 4.0应用程序中使用bodied成员(int S => x + y;而不是int S { get { return x + y; } }表达式。


新的C 6.0功能不依赖于框架支持,所以是的,如果您首先指定要在项目文件中以.NET 4.0为目标,那么使用C 6.0编译器编译的应用程序将在.NET 4.0上运行。


到目前为止,Roslyn C编译器和工具无法在.NET 4.0上运行

当然可以交叉编译.NET 4.0,但要运行编译器本身,至少需要.NET 4.5