SearchResult
Contenido
[
Ocultar
]
SearchResult class
Representa un resultado de búsqueda que coincide con una consulta de búsqueda.
public class SearchResult : IEnumerable<FoundDocument>
Propiedades
Nombre | Descripción |
---|---|
DocumentCount { get; } | Obtiene el número de documentos encontrados. |
EndTime { get; } | Obtiene la hora de finalización de la búsqueda. |
NextChunkSearchToken { get; } | Obtiene un token de búsqueda de fragmentos para buscar el siguiente fragmento. |
OccurrenceCount { get; } | Obtiene el número total de ocurrencias encontradas. |
SearchDuration { get; } | Obtiene la duración de la búsqueda. |
StartTime { get; } | Obtiene la hora de inicio de la búsqueda. |
Truncated { get; } | Obtiene un valor que indica que el resultado está truncado. |
Warnings { get; } | Obtiene una advertencia que describe el resultado. |
Métodos
Nombre | Descripción |
---|---|
GetEnumerator() | Devuelve un enumerador que itera a través de la colección de documentos encontrados. |
GetFoundDocument(int) | Obtiene el documento encontrado por index. |
Observaciones
Aprende más
Ejemplos
El ejemplo demuestra un uso típico de la clase.
string indexFolder = @"c:\MyIndex\";
string documentFolder = @"c:\MyDocuments\";
// Creando un índice
Index index = new Index(indexFolder);
// Indexación de documentos de la carpeta especificada
index.Add(documentFolder);
// Configuración de las opciones de búsqueda
SearchOptions options = new SearchOptions();
options.FuzzySearch.Enabled = true; // Habilitando la búsqueda difusa
options.FuzzySearch.FuzzyAlgorithm = new TableDiscreteFunction(3); // Establecer el número máximo de diferencias en 3
// Buscar documentos que contengan la palabra 'Einstein' o la frase 'Teoría de la Relatividad'
SearchResult result = index.Search("Einstein OR \"Theory of Relativity\"", options);
// Imprimiendo el resultado
Console.WriteLine("Documents: " + result.DocumentCount);
Console.WriteLine("Total occurrences: " + result.OccurrenceCount);
for (int i = 0; i < result.DocumentCount; i++)
{
FoundDocument document = result.GetFoundDocument(i);
Console.WriteLine("\tDocument: " + document.DocumentInfo.FilePath);
Console.WriteLine("\tOccurrences: " + document.OccurrenceCount);
for (int j = 0; j < document.FoundFields.Length; j++)
{
FoundDocumentField field = document.FoundFields[j];
Console.WriteLine("\t\tField: " + field.FieldName);
Console.WriteLine("\t\tOccurrences: " + document.OccurrenceCount);
// Imprimiendo términos encontrados
if (field.Terms != null)
{
for (int k = 0; k < field.Terms.Length; k++)
{
Console.WriteLine("\t\t\t" + field.Terms[k].PadRight(20) + field.TermsOccurrences[k]);
}
}
// Imprimiendo frases encontradas
if (field.TermSequences != null)
{
for (int k = 0; k < field.TermSequences.Length; k++)
{
string sequence = string.Join(" ", field.TermSequences[k]);
Console.WriteLine("\t\t\t" + sequence.PadRight(30) + field.TermSequencesOccurrences[k]);
}
}
}
}
Ver también
- class FoundDocument
- espacio de nombres GroupDocs.Search.Results
- asamblea GroupDocs.Search