Beispiel #1
0
        public IActionResult SaveSearchTerm(SearchTermModel searchTermModel)
        {
            var searchTerm = searchTermModel.Id > 0 ? _searchTermService.Get(searchTermModel.Id) : new SearchTerm();

            if (searchTerm == null)
            {
                return(NotFound());
            }

            _modelMapper.Map(searchTermModel, searchTerm);
            _searchTermService.InsertOrUpdate(searchTerm);

            return(R.Success.With("id", searchTerm.Id).Result);
        }
Beispiel #2
0
 public async Task Invoke(HttpContext context)
 {
     _searchPageUrl = _searchPageUrl ?? "/s";
     //execute only if its search page requested
     if (context.Request.Path == _searchPageUrl)
     {
         var searchTerm = context.Request.Query["search"].FirstOrDefault();
         if (!searchTerm.IsNullEmptyOrWhiteSpace())
         {
             //do the tracking
             var term = _searchTermService.FirstOrDefault(x => x.Term == searchTerm) ?? new SearchTerm()
             {
                 Term = searchTerm
             };
             term.Score++;
             _searchTermService.InsertOrUpdate(term);
         }
     }
     await _next(context);
 }