ビデオ: eラーニング 「【Java SE 8 対応】 Javaプログラミング」 最新バージョンで身につける Javaプログラミング 2024
LINQ for Dummiesカンニングシートの一部
言語INTEgrated Query(LINQ)は、驚くべき数の演算子を使用します。 演算子 は、2つの値が等しいかどうかのチェックなど、実行するクエリの種類をLINQに伝える特別な単語です。演算子は数百に達することができますが、ほとんどの場合、わずかな標準演算子を使用して大部分のタスクを実行します。以下は、必須のLINQ演算子の一覧です。
演算子 | 説明 |
---|---|
から | クエリの実行に使用される一時オブジェクトを定義します。
この演算子は個々の要素オブジェクトを定義するものと考えてください。 クエリの他のすべてのデータを派生させます。たとえば、一時変数に基づいて、 出力に表示されるデータとそのデータの順序付け方法 を選択します。 from 演算子は、作成するすべてのクエリに表示される唯一の演算子です。 in |
データを取得するために使用されるデータソースを定義します。データソース | は、データプロバイダによってサポートされる任意のオブジェクトとすることができる。プロバイダ
は、データソースとLINQクエリとの間の接続を作成します。 たとえば、データソースには、リスト ボックス、XMLファイル、SQL Serverテーブル、Active Directory、Web サービスなどのオブジェクトや、 情報を収集する。 LINQクエリを使用して ハードドライブ上のファイルを直接操作することも可能です。クエリには、クエリで使用される データソースを完全に記述するために必要な、from演算子とin演算子の一致する ペアが含まれます。 select |
クエリの出力情報を選択します。最も単純な | 出力は、from演算子を使用して定義した同じオブジェクトです。しかし、選択演算子は、計算値、データ配列、または個々のオブジェクト特性を含むことができる。ほとんどの場合、制限要因はLINQ
プロバイダが提供する機能です。 4つのデフォルトプロバイダにはすべて、 の範囲の選択オペレータビヘイビアが含まれています。 クエリには1つの選択演算子 しか含まれておらず、この演算子は クエリの最後の演算子として指定する必要があります。 要素が出力の一部として表示される条件を記述します。 where演算子は常に出力条件を定義するためにブール引数を必要とします。あなたは |
が出力基準を完全に記述するために必要な数のオペレータを含むことができます。 LINQは | を演算子のどこにクエリが現れる順序で解釈するので、順序が重要です。クエリ
が予期したとおりに動作しない場合は、出力演算子の順序を変更して、出力の要件をよりよく説明するようにしてください。デバッガを使用して、オペレータの論理的な流れでエラーを見つけるのを助けます。 orderby 出力要素が表示される順序を定義します。 最も単純なorderby演算子は、from 演算子を使用して定義した オブジェクトに依存します。しかし、orderby演算子 は、通常、数値、アルファベット、シンボル、またはバイナリのような、論理順序付け引数 を入力として定義する文をすべて受け入れることができます。 データの出力順を完全に記述するのに必要な |
ように、多くのorderby演算子を使用できます。 | whereオペレータの場合と同様に、LINQはorderby演算子をクエリに現れる順序で解釈します。したがって、orderby演算子の順序は重要です。
join and on 2つ以上のデータソースを結合して、データの複合ビューを作成します。データソースは、同じプロバイダーに依存する必要はありません。 は、 クエリに使用されるすべてのデータソースを完全に記述するのに必要な ような数の結合演算子を使用できます。 on演算子は、2つのデータソースを結合するために使用される 基準を定義します。完全なデータソースを作成するには、結合と演算子 をペアにします。 let クエリ内で使用する計算値を作成します。計算された |
の値により、複雑なクエリを簡単に作成できます。さらに、 | は、計算された値を呼び出し元に渡して、追加の
出力情報を提供することもできます。多くの場合、let演算子は、LINQが命名の競合のために通常渡さないデータを渡す手段を提供します。あなたは が必要なだけ多くの演算子を使って完全なクエリ機能を提供することができますが、計算された 値がクエリ速度を向上させる場合には の使用を制限するべきです。
|