Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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);
            }
        }