为什么Visual Studio 2010不允许在linq查询中使用"is null",而VS2017允许?



当我尝试使用Visual Studio 2010构建Visual Studio 2017解决方案(工作(时,它在下面的代码行中给了我一个语法错误。

var x = (from a in list where a.fld is null select a).ToList();

我已经将该行更改为== null,因此代码现在可以在两个版本的Visual Studio上编译,但是我很想知道为什么is null在VS2010中失败?

C# 7 中引入了is null模式匹配语法(请参阅此处(。

Visual Studio 2010 IDE 和捆绑编译器支持的 C# 语言的最大版本似乎是 C# 4(请参阅此处(。

简而言之:您无法执行此操作,因为编写项目的 C# 语言版本不支持此语法。

相关内容

  • 没有找到相关文章

最新更新