public ActionResult Editar(ExtratorNewsItem extratorNewsItem)
        {
            if (!ModelState.IsValid)
            {
                var extratorNews = extratorNewsApp.ListarPorId(extratorNewsItem.IdExtratorNews);
                ViewBag.ExtratorNews = extratorNews;
                return View(extratorNewsItem);
            }

            extratorNewsItemApp.Salvar(extratorNewsItem);
            this.Flash("Item Salvo com Sucesso!");
            return RedirectToAction("Index", new { Id = extratorNewsItem.IdExtratorNews });
        }
 public void Salvar(ExtratorNewsItem entidade)
 {
     contexto.Save(entidade);
 }
Esempio n. 3
0
        public ActionResult VerNoticia(string url, string id)
        {
            ViewBag.Url = url;
            ViewBag.Id = id;

            var extrator = Fabrica.ExtratorNewsAplicacaoMongo().ListarPorId(id);
            var items = Fabrica.ExtratorNewsItemAplicacaoMongo().ListarTodosPorIdExtratorNews(extrator.Id);

            if (!items.Any())
            {
                return RedirectToAction("Index");
            }

            var dados = new ExtratorNewsItem();
            //items filtrar baseado no começo da url
            foreach (var item in items)
            {
                if (url.Contains(item.Url))
                {
                    dados = item;
                    break;
                }
            }

            //mostrar erro
            if (string.IsNullOrEmpty(dados.Url))
            {
                this.Flash("Não foi possivel achar o item extrator para esta URL!", FlashEnum.Error);
                return View(new NoticiasConteudoCrawler());
            }

            if (string.IsNullOrEmpty(url))
                return RedirectToAction("Index");

            var html = GetHtml(url);
            var query = CQ.Create(html);

            var noticia = new NoticiasConteudoCrawler();

            noticia.Autor = query.Select(dados.SeletorAutor).Text();
            noticia.Titulo = query.Select(dados.SeletorTitulo).Text();
            noticia.Conteudo = query.Select(dados.SeletorConteudo).Text();
            noticia.UrlFoto = query.Select(dados.SeletorFoto).Attr("src");

            return View(noticia);
        }