public async Task <IActionResult> Create(CursoCreateViewModel model, IFormFile picture) { if (ModelState.IsValid) { if (picture != null) { /* * Implementar una validacion que no permita ingresar archivos que no sean imagenes */ string rutaCursoImagen = Path.Combine(_webHostEnvironment.WebRootPath, "upload/cursos"); string archivoUnico = $"{Guid.NewGuid().ToString()}-{Path.GetExtension(picture.FileName)}"; string rutaFinal = Path.Combine(rutaCursoImagen, archivoUnico); using (var file = new FileStream(rutaFinal, FileMode.Create)) { await picture.CopyToAsync(file); } model.Picture = $"upload/cursos/{archivoUnico}"; } if (await _cursoService.GuardarCurso(model)) { return(RedirectToAction("Listado")); } } return(View(model)); }
public async Task <bool> GuardarCurso(CursoCreateViewModel model) { try { var curso = _mapper.Map <Curso>(model); _contexto.Add(curso); await _contexto.SaveChangesAsync(); return(true); } catch (Exception) { return(false); } }