Exemplo n.º 1
0
        public async Task <ActionResult> Put(int id, [FromForm] CreacionActorDTO generarActorDTO)
        {
            // var entidad = Mapper.Map<Actor>(generarActorDTO);

            //entidad.Id = id;
            //Context.Entry(entidad).State = EntityState.Modified;
            var actorDB = await Context.Actores.FirstOrDefaultAsync(x => x.Id == id);

            if (actorDB == null)
            {
                return(NotFound());
            }

            actorDB = Mapper.Map(generarActorDTO, actorDB);
            if (generarActorDTO.Foto != null)
            {
                using (var memoryStream = new MemoryStream())
                {
                    await generarActorDTO.Foto.CopyToAsync(memoryStream);

                    var contenido = memoryStream.ToArray();
                    var extension = Path.GetExtension(generarActorDTO.Foto.FileName);
                    actorDB.Foto = await AlmacenadorArchivos.EditarArchivo(contenido, extension, contenedor,
                                                                           actorDB.Foto, generarActorDTO.Foto.ContentType);
                }
            }

            await Context.SaveChangesAsync();

            return(NoContent());
        }
Exemplo n.º 2
0
        public async Task <ActionResult> Post([FromForm] CreacionActorDTO generarActorDTO)
        {
            var entidad = Mapper.Map <Actor>(generarActorDTO);

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

                    var contenido = memoryStream.ToArray();
                    var extension = Path.GetExtension(generarActorDTO.Foto.FileName);
                    entidad.Foto = await AlmacenadorArchivos.GuardarAchivo(contenido, extension, contenedor,
                                                                           generarActorDTO.Foto.ContentType);
                }
            }


            Context.Add(entidad);
            await Context.SaveChangesAsync();

            return(new CreatedAtRouteResult("obtenerActor", new { id = entidad.Id }, generarActorDTO));
        }