我看到一段代码是这样写的:
if (from n in numbers select n where n = 5)
但是,我尝试写这样的东西但遇到了错误(请记住,代码示例可能与上面的代码不完全一样,因为我是凭内存输入的)。我怎样才能写出像上面这样的代码?
谢谢
最佳答案
为了将其用作条件,您需要有一个返回 bool 值的表达式。这很可能意味着检查是否有任何数字符合您的标准。
你可能想做:
if ( (from n in numbers where n == 5 select n).Any() )
{
// Do something
}
就个人而言,我会避免语言集成语法,并将其写为:
if (numbers.Where(n => n == 5).Any())
{
// Do something
}
甚至:
if (numbers.Any(n => n == 5))
{
// Do something
}
关于c# - LINQ 语句作为 if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2489129/