メソッドExecuteReader
ExecuteReader(QueryCommand、Boolean、Int32)
指定されたクエリに基づいてキャッシュの検索を実行します。 クエリ条件を満たすデータリーダーのキーと値のペアのリストを返します。 このキーと値のペアには、キャッシュキーとそれぞれの値があります。 キー付きのデータが必要かどうかを指定するためのフラグを指定できます。
宣言
ICacheReader ExecuteReader(QueryCommand queryCommand, bool getData = true, int chunkSize = -1)
計測パラメータ
タイプ | 名前 | Description |
---|---|---|
クエリコマンド | queryコマンド | クエリコマンド クエリテキストと値を含みます。 |
System.Boolean | データの取得 | 結果の値をキーで返す必要があるかどうかを示すフラグ。 |
System.Int32 | チャンクサイズ | 検索後に受信したデータ/キーパケットのサイズ。デフォルト値は512*1024KBです。 |
返品
タイプ | Description |
---|---|
ICacheReader | キャッシュで実行されたクエリの結果セットの転送専用ストリームを読み取ります。 |
備考
これらの演算子は、によってサポートされています NCache クエリ
- 比較演算子=、==、!=、<>、<、>、<=、> =、IN
- 論理演算子AND、OR、NOT
- その他()、DateTime.Now、DateTime( "任意の日時互換文字列")
例
ICache cache = CacheManager.GetCache("demoCache");
Productの代わりに、カスタムクラスの完全修飾名を指定します。
string query = "SELECT Product where this.ProductName = ?";
QueryCommand queryCommand = new QueryCommand(query);
queryCommand.Parameters.Add("ProductName", "Chai");
queryCommand.Parameters.Add("UnitsInStock", 250);
try
{
ICacheReader reader = cache.SearchService.ExecuteReader(queryCommand, true, 50);
if (reader.FieldCount > 0)
{
while (reader.Read())
{
object category = reader.GetValue<object>(0);
//perform operations
}
}
else
{
//perform operations
}
reader.Close();
}
catch
{
//handle exception
}