2009-06-28 9 views
9

vb.netのlinqクエリで 'And'または 'AndAlso'を使用している場合は重要ですか?私は通常の操作で知っている 'AndAlso'は短絡であり、しばしば高速ですが、それがlinqクエリに引き継がれるかどうかはわかりません。 linqクエリがデータベースに対してであるかメモリ内のコレクションに対してであるかは重要ですか?vb.netで 'And'とLinqとAndAlsoは関係がありますか?

答えて

14

LINQ toオブジェクトクエリの場合は、間違いなく問題になります。他のLINQプロバイダの場合、プロバイダ自体に依存します。式ツリーレベルでは、は異なるですが、プロバイダーは同じ方法でそれを翻訳/実行することを選択する可能性があります。たとえば、SQLには同等の概念はないので、LINQ to SQLはそれらを同じSQLに変換します。

1

AndとAndAlsoのどちらを使用するかは、使用状況に大きく依存します。ただし、AndAlsoをAndで使用することがほとんど常に望ましいです。

AndAlsoの短絡品質はLINQクエリに引き継がれます

関連する問題