SearchResult

SearchResult class

Bir arama sorgusuyla eşleşen bir arama sonucunu temsil eder.

public class SearchResult : IEnumerable<FoundDocument>

Özellikleri

İsim Tanım
DocumentCount { get; } Bulunan belge sayısını alır.
EndTime { get; } Aramanın bitiş zamanını alır.
NextChunkSearchToken { get; } Bir sonraki parçayı aramak için bir yığın arama belirteci alır.
OccurrenceCount { get; } Bulunan toplam oluşum sayısını alır.
SearchDuration { get; } Arama süresini alır.
StartTime { get; } Aramanın başlangıç zamanını alır.
Truncated { get; } Sonucun kesildiğini gösteren bir değer alır.
Warnings { get; } Sonucu açıklayan bir uyarı alır.

yöntemler

İsim Tanım
GetEnumerator() Bulunan belgelerin koleksiyonunu yineleyen bir numaralandırıcı döndürür.
GetFoundDocument(int) Bulunan belgeyi index. ile alır

Notlar

Daha fazla bilgi edin

Örnekler

Örnek, sınıfın tipik bir kullanımını göstermektedir.

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

// Bir dizin oluşturma
Index index = new Index(indexFolder);

// Belgeleri belirtilen klasörden indeksleme
index.Add(documentFolder);

// Arama seçeneklerini ayarlama
SearchOptions options = new SearchOptions();
options.FuzzySearch.Enabled = true; // Bulanık aramayı etkinleştirme
options.FuzzySearch.FuzzyAlgorithm = new TableDiscreteFunction(3); // Maksimum fark sayısını 3 olarak ayarlıyoruz

// 'Einstein' kelimesini veya 'Görelilik Teorisi' ifadesini içeren belgeleri arayın
SearchResult result = index.Search("Einstein OR \"Theory of Relativity\"", options);

// Sonucu yazdırmak
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);
        // Bulunan terimleri yazdırma
        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]);
            }
        }
        // Bulunan tümceleri yazdırma
        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]);
            }
        }
    }
}

Ayrıca bakınız