Esempio n. 1
0
        public void DeleteTag(string tag)
        {
            VerifyAccess("You must be authenticated to delete a tag.");

            if (string.IsNullOrWhiteSpace(tag))
            {
                throw new ArgumentException("The tag name must be provided.", nameof(tag));
            }

            var name1         = "," + tag + ",";
            var pagesToUpdate = GetCurrentPagesQuery().Where(x => x.Tags.Contains(name1)).ToList();

            pagesToUpdate.ForEach(page => page.Tags = page.Tags.Replace(name1, ","));

            _database.SaveChanges();

            pagesToUpdate.ForEach(page => _searchService.Add(page.ToView(Converter)));
        }
Esempio n. 2
0
        public async Task <ActionResult> Search(Search search)
        {
            search.ScrapeUrl = _scraperService.ConstructScrapeUrl(search.Query);
            var articles = (await _scraperService.FindMatchingArticles(search)).ToList();

            search = await _searchService.Add(search);

            foreach (var article in articles)
            {
                await _articleService.Add(article);
            }
            search.Articles = articles;
            return(View(search));
        }