예제 #1
0
        public async Task <ActionResult> Post([FromForm] ActorCreacionDTO actorCreacionDTO)
        {
            var entidad = _mapper.Map <Actor>(actorCreacionDTO);

            if (actorCreacionDTO.Foto != null)
            {
                using (var memoryStream = new MemoryStream())
                {
                    await actorCreacionDTO.Foto.CopyToAsync(memoryStream);

                    var contenido = memoryStream.ToArray();
                    var extension = Path.GetExtension(actorCreacionDTO.Foto.FileName);
                    entidad.Foto = await almacenadorArchivos.GuardarArchivos(contenido, extension, contenedor,
                                                                             actorCreacionDTO.Foto.ContentType);
                }
            }

            _context.Actores.Add(entidad);
            await _context.SaveChangesAsync();

            var dto = _mapper.Map <ActorDTO>(entidad);

            return(new CreatedAtRouteResult("obtenerAutor", new { id = entidad.Id }, dto));
        }