private void DeleteFile(SubmitFileDTO file) { if (file == null) { return; } string fullPath = Path.Combine(System.Web.Hosting.HostingEnvironment.MapPath("~/Files/Assignments"), file.FileGuid); if (System.IO.File.Exists(fullPath)) { System.IO.File.Delete(fullPath); } }
public void DeleteFileFromFSandDBIfExists(SubmitFileDTO dto) { if (dto == null) { throw new ArgumentNullException(); } var submitFileEntity = mapper.Map <SubmitFileDTO, SubmitFile>(dto); if (submitFileEntity != null) { DeleteFile(submitFileEntity); } submitFileService.Delete(dto); }
public async Task UploadFileAsync(Controller controller, HttpPostedFileBase file, int assignmentId, string studentId) { SubmissionDTO submission = await service.GetByCompositeKeysAsync(assignmentId, studentId); if (submission == null) { throw new Exception(); } if (file != null && file.ContentLength > 0) { try { if (submission.Completed) { controller.ViewBag.FileStatus = "This assignment is already complete!You cannot updload a file to this assignment."; return; } SubmitFileDTOBuilderData builderData = new SubmitFileDTOBuilderData(file); SubmitFileDTO newSubmitFile = dtoFactory.CreateDTO <SubmitFileDTOBuilderData, SubmitFileDTO>(builderData); string path = Path.Combine(controller.Server.MapPath("~/Files/Assignments"), newSubmitFile.FileGuid); file.SaveAs(path); service.DeleteFileFromFSandDBIfExists(submission.SubmitFile); submission.SubmitFile = newSubmitFile; submission.Submitted = DateTime.Now; await service.SaveChangesAsync(); } catch (Exception) { controller.ViewBag.FileStatus = "Error while file uploading."; } } else { controller.ModelState.AddModelError("", "Upload file is not selected!"); } return; }