【问题标题】:VS2013 C# projects in VS2015: Will they use the Roslyn compiler?VS2015 中的 VS2013 C# 项目:他们会使用 Roslyn 编译器吗?
【发布时间】:2016-10-26 00:47:51
【问题描述】:

不完全确定这甚至是一个有效的问题,但是如果我使用 VS2015 打开一个最初使用 VS2013 创建和维护的解决方案,它是否会在构建时使用 Roslyn 编译器平台进行编译(在 VS2015 中)?

该解决方案包括 WPF 应用程序、控制台应用程序、Web 应用程序、Windows 服务应用程序,当然还有类库 - 所以是一个很好的全方位选择。

如果不是这样,我应该如何为这些项目启用 Roslyn 编译器?

谢谢。

【问题讨论】:

  • 项目的来源并不重要,重要的是语言版本。 C# 6 肯定会使用 Roslyn。我认为 C# 5 不会,但我不确定 - 我在迁移后立即切换到 6
  • 如何从 C#5 更改为 C#6;这不是Visual Studio的变化暗示的吗?
  • 项目属性 > 构建 > 高级 > 语言版本。默认值为 6。正如我所说,我在迁移后立即切换。我不记得最初的设置是什么。试一试,例如使用 C# 6 功能,如插值字符串
  • VS 2015 默认使用 Roslyn 编译器。它向后兼容,因此您看不到任何区别。如果您使用任何 C# 6.0 功能,那么您将了解其中的区别。
  • 好的,鉴于我使用的是 VS2015,并且项目的语言版本设置为“默认”,那么我可以使用 C#6 功能,这将使用 Roslyn 编译。我只需要知道它将不再与 VS2013 向后兼容。这是正确的吗?

标签: c# visual-studio-2015 roslyn


【解决方案1】:

如果你在VS2015中打开,无论语言版本切换如何,都会一直使用Roslyn编译器进行编译。

使用 /langversion 开关只是告诉 Roslyn 编译器不允许新功能 - 它不会导致使用较旧的编译器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-01
    • 2018-12-06
    • 1970-01-01
    相关资源
    最近更新 更多