Método ExecuteReader
ExecuteReader(QueryCommand, Boolean, Int32)
Executa a pesquisa no cache com base na consulta especificada. Retorna uma lista de pares de valores-chave em um leitor de dados que atende aos critérios de consulta. Este par chave-valor tem chave de cache e seu respectivo valor. Você pode especificar o sinalizador para especificar se deseja dados com chaves.
Declaração
ICacheReader ExecuteReader(QueryCommand queryCommand, bool getData = true, int chunkSize = -1)
parâmetros
Formato | Nome | Descrição |
---|---|---|
Comando de consulta | comando query | Comando de consulta contendo texto e valores de consulta. |
Sistema.Booleano | Obter dados | Sinalizador para indicar se os valores resultantes devem ser retornados com chaves ou não. |
Sistema.Int32 | tamanho do pedaço | Tamanho dos pacotes de dados/chaves recebidos após a pesquisa, o valor padrão é 512*1024 KB. |
Returns
Formato | Descrição |
---|---|
ICacheReader | Lê o fluxo somente de encaminhamento de conjuntos de resultados da consulta executada no cache. |
Observações
Esses operadores são apoiados por NCache Consultas.
- Operadores de comparação = , == , != , <> , < , > , <=, >=, IN
- Operadores lógicos AND , OR , NOT
- Miscellaneous() , DateTime.Now , DateTime("qualquer string compatível com data e hora")
Exemplos
ICache cache = CacheManager.GetCache("demoCache");
Em vez de Produto, especifique o nome totalmente qualificado de sua classe personalizada.
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
}