コード例 #1
0
        public async Task <ActionResult <ImagenResponseEliminarDto> > Eliminar(int id)
        {
            ImagenResponseEliminarDto respuesta = new ImagenResponseEliminarDto();
            var entidad = await Task.FromResult(_lnImagen.ObtenerPorId(id));

            if (entidad == null)
            {
                respuesta.ListaError.Add(new ErrorDto {
                    Mensaje = "Objeto no encontrado con el ID proporcionado"
                });
                return(NotFound(respuesta));
            }

            int result = await Task.FromResult(_lnImagen.Eliminar(id));

            if (result == 0)
            {
                respuesta.ListaError.Add(new ErrorDto {
                    Mensaje = "Error al intentar eliminar el registro"
                });
                return(BadRequest(respuesta));
            }

            respuesta.ProcesadoOk = true;
            return(Ok(respuesta));
        }
コード例 #2
0
        public int EliminarImagenGaleriaAwsS3(AwsS3EliminarGaleriaDto entidad)
        {
            int respuesta = 0;

            try
            {
                string nombreDirectorio = "Imagen";

                string url           = string.Format("{0}{1}/", _urlAmazon, nombreDirectorio);
                string nombreArchivo = entidad.UrlImagen.Replace(url, string.Empty);

                using (var client = new AmazonS3Client(_llaveAmazon, _claveAmazon, RegionEndpoint.USEast2))
                {
                    var deleteObjectRequest = new DeleteObjectRequest
                    {
                        Key        = nombreArchivo,
                        BucketName = string.Format("red-social/{0}", nombreDirectorio)
                    };

                    Task eliminar = Task.Run(() =>
                    {
                        client.DeleteObjectAsync(deleteObjectRequest);
                    });

                    eliminar.Wait();

                    if (eliminar.IsCompleted)
                    {
                        //eliminar de la base de datos
                        LnImagen lnImagen            = new LnImagen();
                        int      resultadoEliminarBd = lnImagen.Eliminar(entidad.IdImagen);
                        if (resultadoEliminarBd > 0)
                        {
                            respuesta = 1;
                        }
                    }
                }
            }
            catch (AmazonS3Exception exSe)
            {
                Log(Level.Error, String.Format("AmazonS3Exception: {0}", exSe));
            }
            catch (Exception ex)
            {
                Log(Level.Error, String.Format("Exception: {0}", ex));
            }

            return(respuesta);
        }