public Response Delete([FromBody] string filename) { using (ApitemplatereportContext context = new ApitemplatereportContext()) { TblFileDetail file = context.TblFileDetails.Where(file => file.Filename == filename).FirstOrDefault(); if (context.TblFileDetails.Contains(file)) { if (DeleteFile(filename) == true) { context.TblFileDetails.Remove(file); context.SaveChanges(); return(new Response { StatusCode = 200, Content = $"{file.Filename} is deleted", Message = "Delete Success" }); } } } return(new Response { StatusCode = 404, Content = $"Error when delete {filename}", Message = "Delete Failed" }); }
public async System.Threading.Tasks.Task <IActionResult> Download([FromBody] FileDownload filename) { using (ApitemplatereportContext context = new ApitemplatereportContext()) { TblFileDetail file = context.TblFileDetails.Where(file => file.Filename == filename.filename).FirstOrDefault(); if (file != null) { var path = _webHostEnvironment.WebRootPath + "\\Template\\" + file.Filename; try { var memory = new MemoryStream(); using (var stream = System.IO.File.OpenRead(path)) await stream.CopyToAsync(memory); memory.Position = 0; return(new FileStreamResult(memory, "application/octec-stream")); } catch (Exception ex) { Console.WriteLine(ex); } } } return(NotFound()); }
public Response Upload() { if (Request.HasFormContentType) { var form = Request.Form; foreach (var formFile in form.Files) { var targetDirectory = Path.Combine(_webHostEnvironment.WebRootPath, "Template"); var fileName = formFile.FileName; if (Path.GetExtension(fileName) == ".docx" || Path.GetExtension(fileName) == ".doc") { using (ApitemplatereportContext context = new ApitemplatereportContext()) { TblFileDetail file = context.TblFileDetails.Where(file => file.Filename == fileName).FirstOrDefault(); if (file != null) { fileName = formFile.FileName + "_" + GetTimestamp(DateTime.Now) + Path.GetExtension(formFile.FileName); } var savePath = Path.Combine(targetDirectory, fileName); using (var fileStream = new FileStream(savePath, FileMode.Create)) formFile.CopyTo(fileStream); var fileUrl = Url.Content(Path.Combine("~/Template/", fileName)); context.TblFileDetails.Add(new TblFileDetail { Filename = fileName, Fileurl = fileUrl }); context.SaveChanges(); } return(new Response { StatusCode = 200, Content = fileName + "is Uploaded", Message = "File Uploaded" }); } } } return(new Response { StatusCode = 404, Content = "File type is not support!!", Message = "Upload Error" }); }