public async Task <IHttpActionResult> Upload(int id) { if (!Request.Content.IsMimeMultipartContent()) { throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); } var urlImage = string.Empty; var provider = new MultipartMemoryStreamProvider(); await Request.Content.ReadAsMultipartAsync(provider); foreach (var file in provider.Contents) { var filename = file.Headers.ContentDisposition.FileName.Trim('\"'); var buffer = await file.ReadAsByteArrayAsync(); //Do whatever you want with filename and its binaray data. urlImage = AwsBucket.StoreImage(buffer, filename); } var _guideService = new Services.GuideService(); var article = _guideService.GetArticle(id); article.BackgroundImageUrl = urlImage; _guideService.PostArticle(article); return(Json(urlImage)); }
public IHttpActionResult Remove(int id, FileRequest request) { if (string.IsNullOrEmpty(request.Key)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } var key = request.Key.Substring(request.Key.Length - 40); AwsBucket.RemoveImage(key); var _guideService = new Services.GuideService(); var article = _guideService.GetArticle(id); article.BackgroundImageUrl = null; _guideService.PostArticle(article); return(Json("")); }