在vb.net的linq中,'And'和'AndAlso'有关系吗?

9

在vb.net的linq查询中,使用“And”或“AndAlso”是否重要?我知道在正常操作中,“AndAlso”是短路运算,因此通常会更快,但我不知道它是否适用于linq查询。无论linq查询是针对数据库还是针对内存集合,都重要吗?

2个回答

14
对于 LINQ 查询对象,这确实很重要。对于其他的 LINQ 提供程序,它取决于提供程序本身。在表达式树级别上,它们是不同的,但是提供程序可能选择以相同的方式翻译/运行它们。例如,在 SQL 中没有类似的概念,因此 LINQ to SQL 将它们翻译成相同的 SQL。

1

在编程中,使用 And 和 AndAlso 取决于使用的上下文。但是,几乎总是建议使用 AndAlso 而不是 And。

AndAlso 的短路特性将传递到 LINQ 查询中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接