public HttpResponseMessage AddImage(ImagesAddRequest model) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState)); } string userId = _userService.GetCurrentUserId(); ItemResponse <int> response = new ItemResponse <int>(); response.Item = _imagesService.Insert(model, userId); return(Request.CreateResponse(HttpStatusCode.OK, response)); }
//작성폼 public string Uploaded(Stream fileStream, string fileName, int mediaTypeId = 0, int pId = 0) { try {//여기서 클라이언트 만들고 var g = Guid.NewGuid(); string fileNameAtAws = "C32/" + g.ToString() + "_" + fileName.Replace("+", "0"); AWSCredentials awsCredentials = new BasicAWSCredentials(_configService.AwsAccessKeyId, _configService.AwsSecret); AmazonS3Client amazonS3 = new AmazonS3Client(awsCredentials, Amazon.RegionEndpoint.USWest2); TransferUtility fileTransferUtility = new TransferUtility(amazonS3); //파일 트랜스퍼 유틸리티라는 그릇에 amazones3주워 담은다음에 TransferUtilityUploadRequest uploadRequest = new TransferUtilityUploadRequest(); //업로드 신청서에 버킷 이름 쉽게말해 폴더안에 파일을 스트림 즉 흐르게 하고 키에다가 파일이 들어가는 형식을 만들어 적는다 uploadRequest.BucketName = _configService.AwsBucketName; uploadRequest.InputStream = fileStream; uploadRequest.Key = fileNameAtAws; // 그후에 파일트랜스퍼유틸리티에 업로드 속성을 주어서 업로드가 신청서의 속성을 가지게 한다. fileTransferUtility.Upload(uploadRequest); ///_imageSrv . insert ImagesAddRequest request = new ImagesAddRequest(); request.ImageUrl = fileNameAtAws; request.Title = fileName; if (mediaTypeId > 0) { request.MediaTypeId = mediaTypeId; } if (request.MediaTypeId == 1) // If the image to be added is a main image, change all other images to secondary. { _imagesService.UpdateMainToProductImage(pId); } else if (request.MediaTypeId == 3) // If it's a secondary image, change the current secondary to a regular product image. { _imagesService.UpdateSecondaryToProductImage(pId); } int imgId = _imagesService.Insert(request, _userService.GetCurrentUserId()); if (imgId > 0 && pId > 0) { _imagesService.InsertToProductImages(imgId, pId); } return(fileNameAtAws); } catch (AmazonS3Exception) { throw; } }
public string UploadBlogImage(Stream fileStream, string fileName, int bId = 0) { try { var g = Guid.NewGuid(); string fileNameAtAws = "C32/" + g.ToString() + "_" + fileName.Replace("+", "0"); AWSCredentials awsCredentials = new BasicAWSCredentials(_configService.AwsAccessKeyId, _configService.AwsSecret); AmazonS3Client amazonS3 = new AmazonS3Client(awsCredentials, Amazon.RegionEndpoint.USWest2); TransferUtility fileTransferUtility = new TransferUtility(amazonS3); TransferUtilityUploadRequest uploadRequest = new TransferUtilityUploadRequest(); uploadRequest.BucketName = _configService.AwsBucketName; uploadRequest.InputStream = fileStream; uploadRequest.Key = fileNameAtAws; fileTransferUtility.Upload(uploadRequest); ImagesAddRequest request = new ImagesAddRequest(); request.ImageUrl = fileNameAtAws; request.Title = fileName; int imgId = _imagesService.Insert(request, _userService.GetCurrentUserId()); Image update = new Image(); update.ImageUrl = fileNameAtAws; if (imgId > 0 && bId > 0) { _imagesService.UpdateBlogImages(update, bId); } return(fileNameAtAws); } catch (AmazonS3Exception) { throw; } }