public async Task <IActionResult> AnimalRegister(RegistrarAnimalFormViewModel model) { var user = await UserManager.GetUserAsync(HttpContext.User); List <string> fotosSalvas = new List <string>(); if (ModelState.IsValid && fotosSalvas.Count <= 3) { if (model.Fotos != null && model.Fotos.Count > 0) { foreach (IFormFile foto in model.Fotos) { if (foto.FileName.Contains(".jpg") || foto.FileName.Contains(".png")) { string uploadsFolder = Path.Combine(HostingEnvironment.WebRootPath, "images\\"); string uniqueFileName = Guid.NewGuid().ToString() + "_" + user.Nome + "_" + foto.FileName; string filePath = Path.Combine(uploadsFolder, uniqueFileName); await foto.CopyToAsync(new FileStream(filePath, FileMode.Create)); fotosSalvas.Add(" ~/images/" + uniqueFileName); } else { return(RedirectToAction("AnimalRegister")); } } } Animal animal = new Animal { Nome = model.Animal.Nome, Especie = model.Animal.Especie, Porte = model.Animal.Porte, Sexo = model.Animal.Sexo, Descricao = model.Animal.Descricao, Data_Cadastro = DateTime.Now, Foto1 = fotosSalvas.ElementAt(0), Obs = model.Animal.Obs, UsuarioId = user.Id, Usuario = user, CidadeId = user.CidadeId, Cidade = user.Cidade }; if (model.Saude != null) { animal.Saude = String.Join(",", model.Saude); } if (model.Vacina != null) { animal.Vacina = String.Join(",", model.Vacina); } if (fotosSalvas.Count >= 2) { animal.Foto2 = fotosSalvas.ElementAt(1); } if (fotosSalvas.Count == 3) { animal.Foto3 = fotosSalvas.ElementAt(2); } _TccContext.Animal.Add(animal); animal.Usuario.AddAnimal(animal); _TccContext.SaveChanges(); return(RedirectToAction("index", "animal")); } return(View(model)); }
public async Task <IActionResult> AnimalRegister() { RegistrarAnimalFormViewModel model = new RegistrarAnimalFormViewModel(); return(View(model)); }