public void InsereElastic(ZAdmin_RN.NoticiasElastic.Noticia noticia, string elasticServer, string elasticIndex) { var node = new Uri(elasticServer); var settings = new ConnectionSettings(node); settings.DisableDirectStreaming(true); settings.DefaultIndex(elasticIndex + "noticias"); var client = new ElasticClient(settings); var resposta = client.Index(noticia, i => i.Type("noticias").Id(noticia.idnoticia)); }
public int ImportaNoticiaKnewin(int idKnewin, string elasticServer, string elasticIndex) { var db = new ZAdmin_DB.Model.zeengEntities(); var noticiaK = CapturaNoticia(idKnewin); //Cria um objeto de noticia para o banco var n = new ZAdmin_DB.Model.noticias() { autor = noticiaK.autor, categoria = noticiaK.categoria, conteudo = noticiaK.conteudo, datacaptura_knewin = noticiaK.datacapturaknewin, datacaptura_zeeng = DateTime.Now, datapublicacao = noticiaK.datapublicacao, dominio = noticiaK.dominio, idfonte = RetornaIdFonte(noticiaK.idfonte, noticiaK.nomefonte), idnoticia_knewin = noticiaK.idnoticia_knewin, linguagem = noticiaK.linguagem, localidade = noticiaK.localidade, subtitulo = noticiaK.subtitulo, titulo = noticiaK.titulo, url = noticiaK.url, }; db.noticias.Add(n); //Buscar as imagens das notícias foreach (var img in noticiaK.imagens) { var imag = new ZAdmin_DB.Model.noticia_imagens() { url = img.url, titulo = img.titulo, creditos = img.creditos }; db.noticia_imagens.Add(imag); } db.SaveChanges(); ZAdmin_RN.NoticiasElastic.Noticia noticiaE = ConverteKnewinElastic(n.idnoticia, noticiaK); InsereElastic(noticiaE, elasticServer, elasticIndex); //Retorna o id da nova notícia cadastrada return(n.idnoticia); }