LINQサポート NCache

実際のアプリケーションでは、単に主キーをクエリするだけでなく、データをフィルタリングすることが頻繁に必要になる場合があります。 LINQ を使用すると、実行時に使用するカスタム ロジックに基づいてデータベースからデータを簡単に取得できます。 したがって、 NCache は LINQ クエリをサポートしており、データベースをクエリするのと同じ方法で分散キャッシュをクエリできます。

LINQ は、データ ソースからデータを検索してフィルターで除外できる汎用 .NET クエリ言語です。 LINQ 構文は SQL に非常に似ていますが、機能的には、クエリを実行するときに、より優れた最適化されたクエリ方法を提供します。 NCache サーバー。 コードのコンパイル中の構文チェックに対応しながら、より効率的なクエリ式を可能にする機能を提供します。

NCache LINQ をシームレスに統合し、LINQ プロバイダーを介してキャッシュ内の情報を照会します。 リンク プロバイダーは、LINQ オブジェクト モデルを変更せずにアプリケーションのパフォーマンスを向上させながら、分散キャッシュを介した LINQ クエリの実行を容易にします。

 

サポートされているクエリ式

NCache キャッシュデータを検索するためのLINQ言語の基本的なクエリ式をサポートします。 彼らです:

  • ラムダ式: LINQ方程式のラムダ式は実行時にロジックを変換するため、データソースを簡単に渡すことができます。
  • IQueryable<Product> products = new NCacheQuery<Product>(cache);
    IQueryable<Product> product = products.Select(p => p).Where(p => p. UnitsInStock > 10);
  • クエリ式: クエリ式は、LINQ 対応の分散キャッシュ サーバーからデータをクエリして変換します。
  • IQueryable<Product> products = new NCacheQuery<Product>(cache);
    IQueryable<Product> product = from prod in products
                     where prod.UnitsInStock > 10
                     select prod;
 

LINQオペレーター

LINQ演算子は、射影、集計、フィルタリング、並べ替えなどのクエリ機能を提供する拡張メソッドです。 これらのオペレーターの中で、 NCache 以下に記載されているものをサポートします。

  • 射影演算子: 変換関数に基づいて値を投影します。 次のコード スニペットは、選択投影演算子を使用してキャッシュ データを検索する方法を示しています。
  • IQueryable<Product> product = products.Select(prod => prod);
  • 制限演算子: 結果セットを、特定の条件を満たす選択されたデータに制限します。 このコードスニペットは、注文されたユニットが10より大きいすべての製品をキャッシュで検索します。
  • IQueryable<Product> product = products.Select(prod => prod).Where(prod => prod.UnitsInStock > 10);
 

クエリ演算子

NCache 次のようなLINQクエリで基本的なクエリ演算子をサポートします。

  • 等しい(==)
  • 等しくない(!=)
  • 未満(<)
  • 大なり(>)
  • 等しい未満(<=)
  • 等しいより大きい(> =)

参照する LINQクエリ演算子 これらの演算子の使用法について。

 

論理演算子

NCache は、LINQ で XNUMX つの論理演算子 (AND (&&) および OR (||) 演算子) をサポートします。 これらの演算子は、キャッシュ検索の XNUMX つ以上の制限基準を組み合わせます。 LINQ のガイドに従ってください 論理演算子 それらの使用法を詳細に理解する。

 

集計演算子

NCache は次の集計演算子をサポートしています。

  • ワンランク上の
  • 最大値
  • 最小値
  • 平均
  • 合計

以下は、集計関数を使用してキャッシュ データを検索し、結果をカウントする方法の例です。

int count = products.Select(p => p).Where(prod => prod.UnitsInStock <= 50).Count();

で集計演算子の使用法を理解する NCache ガイドから LINQ集約演算子.

 

ワイルドカード演算子

NCache LINQ式で複数のワイルドカードをサポートします。 これらのワイルドカード演算子は次のとおりです。

  • で始まる
  • 次で終わる
  • 含まれています
  • 等しいです

以下は、オペレーターがキャッシュ内の特定のデータセットを検索する場合に制限付きでワイルドカードを使用する例です。

IQueryable<Product> product = products.Select(p => p).Where(p => p.ProductName.StartsWith("Be"));

に関するドキュメントを参照してください LINQワイルドカード演算子 詳細をお知りに。

 

LINQPadのサポート

LINQPad は、クエリおよびラムダ式を使用して対話的に SQL データベースにクエリを実行し、IDE を使用せずに C# コードを作成するために使用されるサードパーティ ツールです。 NCache LINQPad ユーティリティとのシームレスな統合をサポートし、データ分析とアプリケーションのパフォーマンスを向上させます。 LINQPad でクエリを処理するには、 NCache LINQプロバイダーは NCacheContext クラス。 .NET frameworkの IQueryable インターフェイス。

IQueryable<Product> product = new NCacheContext<Product>("myPartitionedCache");
IQueryable<Product> products = from prod in product
             where prod.UnitsInStock > 50
             select prod;
products.Dump();

LINQPad でこのスクリプトを実行すると、UnitsInStock が 50 を超える製品をクエリするための LINQ オブジェクト製品が作成されます。

LINQPad

LINQPadを使用してキャッシュ内のデータをクエリする方法の詳細については、次のドキュメントに従ってください。 LINQPadを使用してキャッシュ内のデータをクエリする、および LINQPad を構成するには NCache 自分で、に提供されている手順に従ってください LINQPadを構成する NCache.

次はどうする?

レビュー NCache 特徴
ダウンロード NCache
パーソナライズされたLIVEデモをリクエストする

お問い合わせ(英語)

電話
©著作権 Alachisoft 2002 - . All rights reserved. NCache はダイヤテック株式会社の登録商標です。