SearchResult
Innehåll
[
Dölj
]
SearchResult class
Representerar ett sökresultat som matchar en sökfråga.
public class SearchResult : IEnumerable<FoundDocument>
Egenskaper
namn | Beskrivning |
---|---|
DocumentCount { get; } | Hämtar antalet hittade dokument. |
EndTime { get; } | Hämtar sluttiden för sökningen. |
NextChunkSearchToken { get; } | Får en bitsökningstoken för att söka efter nästa bit. |
OccurrenceCount { get; } | Hämtar det totala antalet hittade förekomster. |
SearchDuration { get; } | Hämtar söklängden. |
StartTime { get; } | Hämtar starttiden för sökningen. |
Truncated { get; } | Får ett värde som indikerar att resultatet är trunkerat. |
Warnings { get; } | Får en varning som beskriver resultatet. |
Metoder
namn | Beskrivning |
---|---|
GetEnumerator() | Returnerar en uppräkning som itererar genom samlingen av de hittade dokumenten. |
GetFoundDocument(int) | Hämtar det hittade dokumentet efter index. |
Anmärkningar
Läs mer
Exempel
Exemplet visar en typisk användning av klassen.
string indexFolder = @"c:\MyIndex\";
string documentFolder = @"c:\MyDocuments\";
// Skapa ett index
Index index = new Index(indexFolder);
// Indexering av dokument från den angivna mappen
index.Add(documentFolder);
// Ställa in sökalternativ
SearchOptions options = new SearchOptions();
options.FuzzySearch.Enabled = true; // Aktiverar den otydliga sökningen
options.FuzzySearch.FuzzyAlgorithm = new TableDiscreteFunction(3); // Ställer in det maximala antalet skillnader till 3
// Sök efter dokument som innehåller ordet 'Einstein' eller frasen 'relativitetsteori'
SearchResult result = index.Search("Einstein OR \"Theory of Relativity\"", options);
// Skriver ut resultatet
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);
// Skriver ut hittade termer
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]);
}
}
// Skriver ut hittade fraser
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]);
}
}
}
}
Se även
- class FoundDocument
- namnutrymme GroupDocs.Search.Results
- hopsättning GroupDocs.Search