public async Task <ActionResult <ImagenResponseRegistrarDto> > Registrar([FromBody] ImagenRegistrarDto modelo) { ImagenResponseRegistrarDto respuesta = new ImagenResponseRegistrarDto(); if (!ModelState.IsValid) { respuesta.ListaError.Add(new ErrorDto { Mensaje = "Los parametros enviados no son correctos" }); return(BadRequest(respuesta)); } long nuevoId = 0; var result = await Task.FromResult(_lnImagen.Registrar(modelo, ref nuevoId)); if (result == 0) { respuesta.ListaError.Add(new ErrorDto { Mensaje = "Error al intentar registrar" }); return(BadRequest(respuesta)); } respuesta.ProcesadoOk = true; respuesta.IdGenerado = nuevoId; return(Ok(respuesta)); }
public int SubirImagenGaleriaAwsS3(AwsS3RegistrarGaleriaDto entidad, ref long nuevoId, ref string url) { int respuesta = 0; try { url = _urlAmazon; string nombreDirectorio = "Imagen"; //string rutaAchivo = @"C:\TCI\STACE_GENERAMENSAJES\Log\17\10\19\StaceAg_20171019.log"; byte[] bytes = Convert.FromBase64String(entidad.ImagenStringBase64); //Encoding.ASCII.GetBytes(entidad.Imagen); using (var client = new AmazonS3Client(_llaveAmazon, _claveAmazon, RegionEndpoint.USEast2)) { //FileStream fs = new FileStream(rutaAchivo, FileMode.Open, FileAccess.Read); using (var ms = new MemoryStream(bytes)) { //fs.CopyTo(ms); string nombreArchivo = string.Format("{0}_{1}_{2}_{3}{4}{5}_{6}{7}{8}.{9}", entidad.IdUsuario, entidad.IdAlbum, entidad.IdImagen, DateTime.Now.Year.ToString("d4"), DateTime.Now.Month.ToString("d2"), DateTime.Now.Day.ToString("d2"), DateTime.Now.Hour.ToString("d2"), DateTime.Now.Minute.ToString("d2"), DateTime.Now.Second.ToString("d2"), entidad.ExtensionSinPunto); url = string.Format("{0}{1}/{2}", url, nombreDirectorio, nombreArchivo); var uploadRequest = new TransferUtilityUploadRequest { InputStream = ms, Key = nombreArchivo, //Path.GetFileName(rutaAchivo), BucketName = string.Format("red-social/{0}", nombreDirectorio), CannedACL = S3CannedACL.PublicRead }; var fileTransferUtility = new TransferUtility(client); //await fileTransferUtility.UploadAsync(uploadRequest); fileTransferUtility.Upload(uploadRequest); LnImagen lnImagen = new LnImagen(); respuesta = lnImagen.Registrar(new Entidad.Dto.Perfil.ImagenRegistrarDto { IdAlbumImagen = entidad.IdAlbum, Url = url }, ref nuevoId); //respuesta = ProcesarImagen(tipo, Convert.ToInt64(entidad.IdUsuario), url); } } } catch (AmazonS3Exception exSe) { Log(Level.Error, String.Format("AmazonS3Exception: {0}", exSe)); } catch (Exception ex) { Log(Level.Error, String.Format("Exception: {0}", ex)); } return(respuesta); }