在 Visual Studio 2017 年启用新语言功能

Enable New Language Features in Visual Studio 2017

我在整个 Internet 上搜索了似乎是一个非常基本的问题的答案,所以我确定我在这里遗漏了一些明显的东西。我正在将我和我的团队升级到 Visual Studio 2017,但是,当我尝试使用新的 C# 7 语言功能时,出现红色波浪线。代码仍然可以编译和运行;不过,好像 IDE 没有采用新功能。我已经通过 NuGet 添加了 Microsoft.Net.Compilers,但我仍然得到了曲线。我附上了一个非常人为的示例的屏幕截图以供参考(空值异常传播)。

不管怎样,我安装了最新版本的 ReSharper。此外,Roslyn 建议修复 C#7 代码,它们得到了正确修复,但我仍然有红色波浪线。

最新版本的 ReSharper (2016.3) does not have full C# 7.0 support,所以我认为这很可能是导致问题的原因。

我使用 ReSharper 2017.1 EAP 4 时您的代码运行良好,包括正确地将 throw 表达式标记为不可访问。因此,如果您愿意使用预发布软件,您可能想尝试升级到该版本。