编译器在不同 PC 中为相同代码抛出异常

Compiler throws exception for same code in different PC

在我的 VS 中的下面一行并且工作正常我签入并且我的同事得到了这些代码片段..

vm.MuayeneId = (MuayeneId ?? SessionItems.AktifMuayene?.MuayeneId) ?? throw new Exception("Muayene Id bulunamadi");

他的 Visual Studio 编译器以某种方式在 throw 关键字下画了一条红线,上面写着“;预期”。这些代码的下一行黄线并表示 "Unreachable code.." 这就是它的样子;

我的同事也在他的 PC 中安装了 .NET 4.6.2.. 这可能是什么原因造成的?

该语法称为 throw expressions,由 C# 7.0 引入。我假设您的同事使用 C# 6.0 或更低版本,因此代码无法编译。

也许您的同事可以升级 Visual Studio 以使用 C# 7.0,请参阅

可在 John Skeet 发布的 here 中找到 C# 版本历史记录。根据他的列表,C# 7.0 与 .NET 4.7 和 VS 2017(2017 年 3 月)一起发布。