Esempio n. 1
0
        public ActionResult SearchSingle(SingleFieldSearchViewModel sfsViewModel)
        {
            List <ResultData> result = EBookService.Search(sfsViewModel);
            var model = new SearchViewModel(sfsViewModel, result);

            return(Json(model));
        }
Esempio n. 2
0
        public List <ResultData> Search(SingleFieldSearchViewModel sfsViewModel)
        {
            var    results    = new List <ResultData>();
            string fieldName  = sfsViewModel.FieldName.Trim();
            string fieldValue = sfsViewModel.FieldValue.Trim();

            QueryType   queryType = (QueryType)Enum.Parse(typeof(QueryType), sfsViewModel.QueryType);
            IndexerType type      = AnalyzerService.GetIndexerType(sfsViewModel.Language);

            try
            {
                Query query = QueryBuilder.BuildQuery(type, queryType, fieldName, fieldValue);
                InformationRetriever informationRetriever = new InformationRetriever(type, RAW_DIR_PATH, INDEX_DIR_PATH);

                var queriedHighlights = new List <string>()
                {
                    fieldName
                };

                results = informationRetriever.RetrieveEBooks(type, query, queriedHighlights, Sort.INDEXORDER);

                if (results.Count != 0)
                {
                    MapLanguageAndCategory(results);
                }
            }
            catch (Exception e)
            {
                throw e;
            }

            return(results);
        }