public ActionResult Create(DesafioCreate model, string[] selectedTag, HttpPostedFileBase file) { TipoAvaliacao TipoAvaliacao = db.TiposAvaliacao.Where(i => i.TipoAvaliacaoId == 1).FirstOrDefault(); System.Diagnostics.Debug.WriteLine(model.lat); if (ModelState.IsValid) { Desafio desafio = new Desafio(); Anexo anexo = new Anexo(); desafio.lat = model.lat; desafio.lon = model.lon; desafio.TipoTrabalho = model.TipoTrabalho; desafio.Descricao = model.Descricao; desafio.DataCriacao = DateTime.Now; desafio.TipoAvaliacao = TipoAvaliacao; desafio.valor = model.ValorMonetario; desafio.ApplicationUserId = User.Identity.GetUserId(); var listaTags = atualizarTagsDesafio(desafio, selectedTag); desafio.Tags = listaTags; db.Desafios.Add(desafio); db.SaveChanges(); if (file.ContentLength > 0) { string filePath = Path.Combine(HttpContext.Server.MapPath("~/Anexos/"), Path.GetFileName(file.FileName)); file.SaveAs(filePath); anexo.Caminho = filePath; anexo.DesafioId = desafio.DesafioId; anexo.NomeFicheiro = file.FileName; db.Anexos.Add(anexo); } db.SaveChanges(); return(RedirectToAction("Index")); } preencherTagDesafio(); return(View(model)); }
public ActionResult Create(DesafioCreate model, string[] selectedTag, HttpPostedFileBase file) { TipoAvaliacao TipoAvaliacao = db.TiposAvaliacao.Where(i => i.TipoAvaliacaoId == 1).FirstOrDefault(); System.Diagnostics.Debug.WriteLine(model.lat); if (selectedTag == null) { ModelState.AddModelError("TagErro", "Tem que Seleccionar pelo menos uma tag"); } if (file == null) { ModelState.AddModelError("ErroFicheiro", "Tem que Submeter pelo menos um ficheiro"); } if (file != null) { string extensao = Path.GetExtension(file.FileName); if (extensao != ".zip") { ModelState.AddModelError("Zip", "Compacte os ficheiros e envie em formato .Zip"); } } if (ModelState.IsValid) { Desafio desafio = new Desafio(); Anexo anexo = new Anexo(); desafio.lat = model.lat; desafio.lon = model.lon; desafio.TipoTrabalho = model.TipoTrabalho; desafio.Descricao = model.Descricao; desafio.DataCriacao = DateTime.Now; desafio.TipoAvaliacao = TipoAvaliacao; desafio.valor = model.ValorMonetario; desafio.Pontos = model.Pontos; desafio.DataFinalSolucoes = model.DesafioSolucao; desafio.ApplicationUserId = User.Identity.GetUserId(); desafio.DiasAvaliacao = obtemDias(model.DesafioSolucao); desafio.DiasVotacao = obtemDias(model.DesafioSolucao); var listaTags = atualizarTagsDesafio(desafio, selectedTag); desafio.Tags = listaTags; db.Desafios.Add(desafio); db.SaveChanges(); if (file.ContentLength > 0) { string filePath = Path.Combine(HttpContext.Server.MapPath("~/Anexos/"), Path.GetFileName(file.FileName)); file.SaveAs(filePath); anexo.Caminho = filePath; anexo.DesafioId = desafio.DesafioId; anexo.NomeFicheiro = file.FileName; db.Anexos.Add(anexo); } db.SaveChanges(); return(RedirectToAction("Index")); } preencherTagDesafio(); return(View(model)); }