SearchQuery

SearchQuery class

Representa una consulta de búsqueda en forma de objeto.

public abstract class SearchQuery

Propiedades

Nombre Descripción
virtual ChildCount { get; } Obtiene el número de consultas secundarias.
virtual FieldName { get; } Obtiene el nombre del campo.
virtual FirstChild { get; } Obtiene la primera consulta secundaria.
SearchOptions { get; set; } Obtiene o establece las opciones de búsqueda de esta consulta de búsqueda.
virtual SecondChild { get; } Obtiene la segunda consulta secundaria.

Métodos

Nombre Descripción
static CreateAndQuery(SearchQuery, SearchQuery) Crea una consulta combinada que encontrará solo los documentos que se encontrarán para cada consulta original.
static CreateDateRangeQuery(DateTime, DateTime) Crea una consulta de intervalo de fechas.
static CreateFieldQuery(string, SearchQuery) Agrega un campo a la consulta especificada.
static CreateNotQuery(SearchQuery) Crea una consulta invertida que encontrará el resto de documentos en un índice contra los que se encontrarán para la consulta original.
static CreateNumericRangeQuery(long, long) Crea una consulta de rango numérico.
static CreateOrQuery(SearchQuery, SearchQuery) Crea una consulta combinada que encontrará todos los documentos que se encontrarán al menos para una de las consultas originales.
static CreatePhraseSearchQuery(params SearchQuery[]) Crea una consulta de búsqueda de frase.
static CreateRegexQuery(string) Crea una consulta de expresión regular.
static CreateRegexQuery(string, RegexOptions) Crea una consulta de expresión regular.
static CreateWildcardQuery(int) Crea un comodín para la búsqueda de frase.
static CreateWildcardQuery(int, int) Crea un comodín para la búsqueda de frase.
static CreateWordPatternQuery(WordPattern) Crea una consulta de patrón de palabras.
static CreateWordQuery(string) Crea una consulta de palabra simple.
abstract GetChild(int) Obtiene una consulta secundaria por un índice.
abstract ToString() Devuelve unString que representa la corrienteSearchQuery instancia.

Observaciones

Aprende más

Ejemplos

El ejemplo demuestra un uso típico de la clase.

string indexFolder = @"c:\MyIndex\";
string documentsFolder = @"c:\MyDocuments\";

Index index = new Index(indexFolder); // Creando índice en la carpeta especificada
index.Add(documentsFolder); // Indexación de documentos de la carpeta especificada

// Creando una subconsulta de búsqueda de rango de fechas
SearchQuery subquery1 = SearchQuery.CreateDateRangeQuery(new DateTime(2011, 6, 17), new DateTime(2013, 1, 1));

// Creando subconsulta de comodín con número de palabras perdidas de 0 a 2
SearchQuery subquery2 = SearchQuery.CreateWildcardQuery(0, 2);

// Creando una subconsulta de una palabra simple
SearchQuery subquery3 = SearchQuery.CreateWordQuery("birth");
subquery3.SearchOptions = new SearchOptions(); // Configuración de opciones de búsqueda solo para la subconsulta 3
subquery3.SearchOptions.FuzzySearch.Enabled = true;
subquery3.SearchOptions.FuzzySearch.FuzzyAlgorithm = new TableDiscreteFunction(1);

// Combinando subconsultas en una sola consulta
SearchQuery query = SearchQuery.CreatePhraseSearchQuery(subquery1, subquery2, subquery3);

// Creación de objeto de opciones de búsqueda con mayor capacidad de ocurrencias encontradas
SearchOptions options = new SearchOptions(); // Opciones generales de búsqueda
options.MaxOccurrenceCountPerTerm = 1000000;
options.MaxTotalOccurrenceCount = 10000000;

SearchResult result = index.Search(query, options); // Buscando

Ver también