private IList <Curtinha> GetNoticiasUol() { IList <Curtinha> noticiasUol = new List <Curtinha>(); var client = new RestClient("https://rss.home.uol.com.br/index.xml"); var request = new RestRequest(Method.GET) { RequestFormat = DataFormat.Xml, XmlSerializer = new RestSharp.Serializers.DotNetXmlSerializer() }; IRestResponse response = client.Execute(request); if (response.IsSuccessful) { XmlDocument doc = new XmlDocument(); doc.LoadXml(response.Content); XmlNodeList noticias = doc.DocumentElement.SelectNodes("/rss/channel/item"); foreach (XmlNode noticia in noticias) { XmlNodeList atributosNoticia = noticia.ChildNodes; Curtinha curtinha = new Curtinha(); foreach (XmlNode atributo in atributosNoticia) { switch (atributo.Name) { case "title": string[] titulo = atributo.InnerText.Split('|'); curtinha.Titulo = "(" + titulo[0].Trim() + ") " + titulo[1].Trim(); break; case "description": curtinha.Resumo = atributo.InnerText; break; case "link": curtinha.Link = atributo.InnerText; break; case "media:content": curtinha.UrlImagem = "https" + atributo.Attributes["url"].Value.Substring(4); break; case "pubDate": curtinha.DataPublicacao = DateTime.ParseExact(atributo.InnerText.Substring(0, atributo.InnerText.Length - 6), "ddd, dd MMM yyyy H:mm:ss", CultureInfo.InvariantCulture); curtinha.DataEdicao = DateTime.Now; break; } } noticiasUol.Add(curtinha); } } return(noticiasUol); }
public IHttpActionResult Editar(Curtinha curtinhaEditada) { var curtinhaAtual = _context.Curtinhas.SingleOrDefault(c => c.Id == curtinhaEditada.Id); if (curtinhaAtual != null) { curtinhaAtual.UrlImagem = curtinhaEditada.UrlImagem; curtinhaAtual.Titulo = curtinhaEditada.Titulo; curtinhaAtual.Resumo = curtinhaEditada.Resumo; curtinhaAtual.Link = curtinhaEditada.Link; curtinhaAtual.Detalhes = curtinhaEditada.Detalhes; curtinhaAtual.DataEdicao = DateTime.Now; _context.SaveChanges(); return(Ok(curtinhaAtual)); } else { return(NotFound()); } }
public IHttpActionResult AdicionarCurtinha(Curtinha curtinha) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Curtinha novaCurtinha = new Curtinha() { UrlImagem = curtinha.UrlImagem, Titulo = curtinha.Titulo, Resumo = curtinha.Resumo, Detalhes = curtinha.Detalhes, DataPublicacao = DateTime.Now, DataEdicao = DateTime.Now, Link = curtinha.Link }; _context.Curtinhas.Add(novaCurtinha); _context.SaveChanges(); VerificarQtdCurtinhas(); return(Ok(novaCurtinha)); }