public async Task <IActionResult> PutLesionItem([FromRoute] int id, [FromBody] LesionItem lesionItem) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != lesionItem.Id) { return(BadRequest()); } _context.Entry(lesionItem).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!LesionItemExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PostLesionItem([FromBody] LesionItem lesionItem) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.LesionItem.Add(lesionItem); await _context.SaveChangesAsync(); return(CreatedAtAction("GetLesionItem", new { id = lesionItem.Id }, lesionItem)); }
public async Task <IActionResult> UploadFile([FromForm] LesionImageItem lesion) { if (!MultipartRequestHelper.IsMultipartContentType(Request.ContentType)) { return(BadRequest($"Expected a multipart request, but got {Request.ContentType}")); } try { using (var stream = lesion.Image.OpenReadStream()) { var cloudBlock = await UploadToBlob(lesion.Image.FileName, null, stream); //// Retrieve the filename of the file you have uploaded //var filename = provider.FileData.FirstOrDefault()?.LocalFileName; if (string.IsNullOrEmpty(cloudBlock.StorageUri.ToString())) { return(BadRequest("An error has occured while uploading your file. Please try again.")); } LesionItem lesionItem = new LesionItem(); lesionItem.Location = lesion.Location; lesionItem.Diameter = Convert.ToInt32(lesion.Diameter); // Convert user string input to int System.Drawing.Image image = System.Drawing.Image.FromStream(stream); lesionItem.Height = image.Height.ToString(); lesionItem.Width = image.Width.ToString(); lesionItem.Url = cloudBlock.SnapshotQualifiedUri.AbsoluteUri; lesionItem.Uploaded = DateTime.Now.ToString(); _context.LesionItem.Add(lesionItem); await _context.SaveChangesAsync(); return(Ok($"File: {lesion.Location} has successfully uploaded")); } } catch (Exception ex) { return(BadRequest($"An error has occured. Details: {ex.Message}")); } }