Esempio n. 1
0
        private string FormatTfIdf(WeightedPosting posting)
        {
            IEnumerable <string> summands = Enumerable
                                            .Range(0, posting.TFs.Length)
                                            .Select(x => string.Format("{0:F5}&times;{1:F5} ({2})", posting.TFs[x], posting.IDFs[x], terms[x]));

            return(string.Join(" + ", summands.ToArray()));
        }
Esempio n. 2
0
        private Hit ConvertDocumentIdToHit(WeightedPosting posting, ParsedQuery query)
        {
            string formattedDocumentId = string.Format("{0:D6}", posting.PostingId);
            var    document            = new Document(formattedDocumentId);
            var    snippet             = new SnippetGenerator(query, document).GenerateSnippet();

            return
                (new Hit
            {
                DocumentId = formattedDocumentId,
                Description = GetDescription(posting.PostingId, string.Format("№{0}", formattedDocumentId)),
                DebugInfo =
                    new[]
                {
                    string.Format("tf-idf = {0:F5} = {1}", Ranker.GetTfIdf(posting), FormatTfIdf(posting)),
                    string.Format("ExactWordMatchCount = {0}", posting.ExactWordMatchCount)
                },
                Snippet = string.Join("&nbsp;&hellip;&nbsp;", snippet.Skip(1).ToArray()),
                Title = snippet.First(),
            });
        }