示例#1
0
        private void DoLuceneSearch()
        {
            var filteredList = new RangeEnabledObservableCollection <ImageEntityVm>();

            var list = LuceneService.Context.Search(SearchTerm);

            filteredList.InsertRange(ListImageEntityObj.Where(entity => list.Contains(entity.ImageName)));
            //lbImageGallery.DataContext = filteredList;
        }
示例#2
0
        private void SearchButton_Click(object sender, RoutedEventArgs e)
        {
            var filteredList = new RangeEnabledObservableCollection <ImageEntity>();

            var list = LuceneService.Context.Search(SearchBox.Text);

            var listDic = list.ToDictionary(s => s.FileName) as Dictionary <string, LuceneDoc>;


            filteredList.InsertRange(ListImageEntityObj.Where(entity => listDic.ContainsKey(entity.CleanImageName))
                                     .Select(s =>
            {
                var item        = listDic[s.CleanImageName];
                s.LuceneScore   = item.Score;
                s.LuceneRanking = GetRanking(item.Score);
                return(s);
            })
                                     .OrderByDescending(s => s.LuceneScore));
            lbImageGallery.DataContext = filteredList;
        }