public async Task <IActionResult> DeleteConfirm(Guid id) { var file = _fileData.Get(id); if (file != null) { var companyId = GetNonAdminUserCompanyId(); if (!companyId.IsNullOrWhiteSpace() && !file.ContainerName.Equals(companyId, StringComparison.OrdinalIgnoreCase) || file.ReadOnly) { return(RedirectToAction(nameof(AccountController.AccessDenied), nameof(AccountController).GetControllerName(), new { returnUrl = Request.Path })); } if (!string.IsNullOrWhiteSpace(file.ContainerName) && !string.IsNullOrWhiteSpace(file.FileName)) { try { await _blobService.DeleteBlob(file.ContainerName, file.FileName); } catch (ArgumentException) { // no container, fine because it's probably seed data } } _fileData.Delete(file); _fileData.Commit(); SendFileNotification(FileOperations.Deleted, file.FileName, User.Claims.FirstOrDefault(_ => _.Type.Equals(AuthConstants.CompanyClaim)).Value); } return(RedirectToAction(nameof(Index))); }
public async Task <IHttpActionResult> DeleteStationImage(DeleteStationImageModel model) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } bool validated = false; HttpRequestMessage request = ControllerContext.Request; // this seems to be same as request ValidateCredentials VC = new ValidateCredentials(); validated = VC.checkCreds(request); if (!validated) { return(Unauthorized()); } if (model.ID <= 0) { return(BadRequest()); } // Call service to perform delete, then check result to return as content var deleteStationImageModel = await _service.DeleteBlob(model); if (deleteStationImageModel != null) { if (deleteStationImageModel.Deleted) { return(Ok(deleteStationImageModel)); } else { return(BadRequest(deleteStationImageModel.ErrorMessage)); } } // Otherwise return(BadRequest()); } catch (Exception ex) { HandleErrors(ex, "StationImageController_DeleteStationImage", "", ""); return(InternalServerError(ex)); } }
public IActionResult DeleteBlob(int id) { try { if (id < 0) { return(BadRequest(new { error = "The input was not valid." })); } bool _isDeleted = _blobService.DeleteBlob(id); if (_isDeleted) { return(Ok()); } else { return(NotFound()); } } catch (Exception ex) { return(BadRequest(new { error = ex.ToString() })); } }
public async Task <FileDeleteModel> DeleteImage(string fileName) { return(await blobService.DeleteBlob(fileName)); }
public async Task DeleteBlob(Guid blobId) { await _blobService.DeleteBlob(blobId); }