public IActionResult Delete(string id = null, int seq = 0, string typ = null) { AttainFile attainfile = _db.AttainFiles.Find(typ, id, seq); if (attainfile == null) { return(NotFound()); } else { try { string WebRootPath = _hostingEnvironment.WebRootPath; string filePath = Path.Combine(@"D:\" + "/Files/BMED/"); FileInfo ff = new FileInfo(Path.Combine(filePath, attainfile.FileLink)); ff.Delete(); _db.AttainFiles.Remove(attainfile); _db.SaveChanges(); //return Json(new { msg = "儲存成功!" }, JsonRequestBehavior.AllowGet); return(Content("")); } catch (Exception ex) { return(Content(ex.Message)); } } }
public async Task <IViewComponentResult> InvokeAsync(string doctype, string docid, string viewType) { AttainFile attainFile = new AttainFile(); attainFile.DocType = doctype; attainFile.DocId = docid; attainFile.SeqNo = 2; attainFile.IsPublic = "N"; attainFile.FileLink = "default"; if (viewType == "AjaxView") { return(View("AjaxView", attainFile)); } return(View(attainFile)); }
public async Task <IActionResult> Create(AttainFile attainFile, IEnumerable <IFormFile> file) { //目前使用者資料 var ur = _userRepo.Find(u => u.UserName == this.User.Identity.Name).FirstOrDefault(); //文件臨時位置的完整路徑 var filePath = Path.GetTempFileName(); if (ModelState.IsValid) { try { //AppUser appUser = db.AppUsers.Where(u => u.UserName == User.Identity.Name).FirstOrDefault(); //接收文件 //HttpPostedFileBase file = Request.Files[0]; //文件扩展名 //string extension = Path.GetExtension(file.FileName); string s = "/Files/OutsideBmed"; #if DEBUG s = "/Files"; #endif switch (attainFile.DocType) { case "OutsideBmed": s += "/OutsideBmed/"; break; default: s += "/Sign/"; break; } var i = _db.AttainFiles .Where(a => a.DocType == attainFile.DocType) .Where(a => a.DocId == attainFile.DocId).ToList(); attainFile.SeqNo = i.Count == 0 ? 1 : i.Select(a => a.SeqNo).Max() + 1; string path = Path.Combine(@"D:\" + s + attainFile.DocId + "_" + attainFile.SeqNo.ToString() + Path.GetExtension(Request.Form.Files[0].FileName)); // Upload files. using (var stream = new FileStream(path, FileMode.Create)) { await Request.Form.Files[0].CopyToAsync(stream); } string filelink = attainFile.DocId + "_" + attainFile.SeqNo.ToString() + Path.GetExtension(Request.Form.Files[0].FileName); switch (attainFile.DocType) { case "OutsideBmed": attainFile.FileLink = "OutsideBmed/" + filelink; break; default: attainFile.FileLink = "Sign/" + filelink; break; } attainFile.Rtt = DateTime.Now; attainFile.Rtp = ur.Id; _db.AttainFiles.Add(attainFile); _db.SaveChanges(); } catch (Exception e) { throw new Exception(e.Message); } } else { string msg = ""; foreach (var error in ViewData.ModelState.Values.SelectMany(modelState => modelState.Errors)) { msg += error.ErrorMessage + Environment.NewLine; } throw new Exception(msg); } return(new JsonResult(new { Data = new { success = true, error = "" } })); }