예제 #1
0
        public async Task <ActionResult> Put(int id, [FromForm] ActorCrearDTO actorDto)
        {
            var actorDB = await context.Actores.FirstOrDefaultAsync(x => x.Id == id);

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

            actorDB = mapper.Map(actorDto, actorDB);

            var entidad = mapper.Map <Actor>(actorDto);

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

                    var contenido = memoryStream.ToArray();
                    var extension = Path.GetExtension(actorDto.Foto.FileName);

                    actorDB.Foto = await almacenadorArchivos.EditarArchivo(contenido, extension, contenedor, actorDB.Foto, actorDto.Foto.ContentType);
                }
            }

            await context.SaveChangesAsync();

            return(NoContent());
        }
예제 #2
0
        public async Task <ActionResult> Post([FromForm] ActorCrearDTO actorDto)
        {
            var entidad = mapper.Map <Actor>(actorDto);

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

                    var contenido = memoryStream.ToArray();
                    var extension = Path.GetExtension(actorDto.Foto.FileName);

                    entidad.Foto = await almacenadorArchivos.GuardarArchivo(contenido, extension, contenedor, actorDto.Foto.ContentType);
                }
            }

            await context.AddAsync(entidad);

            await context.SaveChangesAsync();

            var actor = mapper.Map <ActorDTO>(entidad);

            return(new CreatedAtRouteResult("ObtenerActor", new { id = actor.Id }, actor));
        }
예제 #3
0
        //Cambiamos de FromBody a FromForm para enviar foto
        public async Task <ActionResult> Post([FromForm] ActorCrearDTO actorCreacionDTO)
        {
            var actor = mapper.Map <Actor>(actorCreacionDTO);

            if (actorCreacionDTO.Foto != null)
            {
                actor.Foto = await almacenadorArchivos.GuardarArchivo(contenedor, actorCreacionDTO.Foto);
            }
            context.Add(actor);

            await context.SaveChangesAsync();

            return(NoContent());
        }
예제 #4
0
        public async Task <ActionResult> Put(int id, [FromForm] ActorCrearDTO actorCreacionDTO)
        {
            var actor = await context.Actores.FirstOrDefaultAsync(x => x.Id == id);

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

            actor = mapper.Map(actorCreacionDTO, actor);

            if (actorCreacionDTO.Foto != null)
            {
                actor.Foto = await almacenadorArchivos.EditarArchivo(contenedor, actorCreacionDTO.Foto, actor.Foto);
            }

            await context.SaveChangesAsync();

            return(NoContent());
        }