public void AdicionaPublicacao(PublicacaoDestino nova) { using (var contexto = new BlogContext()) { var estado = (from e in contexto.Estados where e.nome == nova.nomeEstado && e.idPais == nova.idPais select e).FirstOrDefault(); if (estado == null) { estado = new Estado(nova.nomeEstado.ToUpper(), nova.idPais); contexto.Estados.Add(estado); contexto.SaveChanges(); } var cidade = (from c in contexto.Cidades where c.nome == nova.nomeCidade && c.idEstado == estado.id && c.idPais == nova.idPais select c).FirstOrDefault(); if (cidade == null) { cidade = new Cidade(nova.nomeCidade.ToUpper(), estado.id, nova.idPais); contexto.Cidades.Add(cidade); contexto.SaveChanges(); } nova.nomeEstado = nova.nomeEstado.ToUpper(); nova.nomeCidade = nova.nomeCidade.ToUpper(); contexto.Publicacoes.Add(nova); contexto.SaveChanges(); } }
public ActionResult AdicionaPublicacao(int idPais, string nomeEstado, string nomeCidade, string descricao, string autor, HttpPostedFileBase imagem) { byte[] img = new byte[imagem.ContentLength]; imagem.InputStream.Read(img, 0, imagem.ContentLength); PublicacaoDestino nova = new PublicacaoDestino(idPais, nomeEstado, nomeCidade, descricao, autor, img); PublicacaoDAO pub = new PublicacaoDAO(); pub.AdicionaPublicacao(nova); if (nova.idPais == 1) { return(RedirectToAction("DestinosNacionais")); } else { return(RedirectToAction("DestinosInternacionais")); } }