public ActionResult Import(HttpPostedFileBase fileBase) { var file = Request.Files["files"]; if (file == null || file.ContentLength <= 0) { ViewBag.Error = "文件不能为空"; return(View()); } int subjectId = int.Parse(Request.Form["SubjectId"]); int deptId = int.Parse(Request.Form["DeptId"]); var filename = Path.GetFileName(file.FileName); var fileEx = Path.GetExtension(filename); //获取上传文件的扩展名 var noFileName = Path.GetFileNameWithoutExtension(filename); //获取无扩展名的文件名 const string fileType = ".xls,.xlsx"; //定义上传文件的类型字符串 var newFileName = noFileName + DateTime.Now.ToString("yyyyMMddhhmmss") + fileEx; if (fileEx != null && !fileType.Contains(fileEx)) { ViewBag.Error = "文件类型不对,只能导入xls和xlsx格式的文件"; return(View()); } string path = AppDomain.CurrentDomain.BaseDirectory + "uploads/excel/"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string savePath = Path.Combine(path, newFileName); file.SaveAs(savePath); var expImp = new ExportImport(); var dt = expImp.GetFillData(savePath, false); if (dt == null) { ViewBag.Error = "导入的数据文件格式不正确"; return(View()); } var importCount = dt.Rows.Count; if (importCount == 0) { ViewBag.Error = "导入的数据文件为空"; return(View()); } string message; if (!CheckExcel(ref dt, out message)) { ViewBag.Error = "!!!导入失败!!!<br/>" + message; return(View()); } if (dt.Rows.Count == 0) { ViewBag.Error = "无正确的数据可导入"; return(View()); } var examDb = new List <exam_database>(); foreach (DataRow dr in dt.Rows) { var exam = new exam_database() { Type = dr[0].ToString(), Question = dr[1].ToString(), Text1 = dr[2].ToString(), Text2 = dr[3].ToString(), Text3 = dr[4].ToString(), Text4 = dr[5].ToString(), Text5 = dr[6].ToString(), Text6 = dr[7].ToString(), Answer = dr[8].ToString().ToUpper(), SubjectId = subjectId, DeptId = deptId }; examDb.Add(exam); } //写库 bool ret = _examRep.Add(examDb) > 0; ViewBag.Error = ret ? "导入成功" : "导入失败"; return(View()); }
public ActionResult Import(HttpPostedFileBase fileBase) { var file = Request.Files["files"]; //int deptId = int.Parse(Request.Form["DeptId"]); if (file == null || file.ContentLength <= 0) { ViewBag.error = "文件不能为空"; return(View()); } var filename = Path.GetFileName(file.FileName); var fileEx = Path.GetExtension(filename); //获取上传文件的扩展名 var noFileName = Path.GetFileNameWithoutExtension(filename); //获取无扩展名的文件名 const string fileType = ".xls,.xlsx"; //定义上传文件的类型字符串 var newFileName = noFileName + DateTime.Now.ToString("yyyyMMddhhmmss") + fileEx; if (fileEx != null && !fileType.Contains(fileEx)) { ViewBag.error = "文件类型不对,只能导入xls和xlsx格式的文件"; return(View()); } string path = AppDomain.CurrentDomain.BaseDirectory + "uploads/excel/"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string savePath = Path.Combine(path, newFileName); file.SaveAs(savePath); var expImp = new ExportImport(); var dt = expImp.GetFillData(savePath, false); if (dt == null) { ViewBag.Error = "导入的数据文件格式不正确"; return(View()); } var importCount = dt.Rows.Count; if (importCount == 0) { ViewBag.Error = "导入的数据文件为空"; return(View()); } string message; if (!CheckExcel(ref dt, out message)) { ViewBag.Error = "导入失败"; return(View()); } if (dt.Rows.Count == 0) { ViewBag.Error = "无正确的数据可导入"; return(View()); } var empList = new List <cadre_info>(); foreach (DataRow dr in dt.Rows) { cadre_info emp = new cadre_info { UserID = dr[0].ToString(), UserName = dr[1].ToString(), Pwd = dr[2].ToString(), DeptId = AdminLoginHelper.LoginInfo.DeptId }; empList.Add(emp); } //写库 bool ret = _cadreInfoRep.Add(empList) > 0; ViewBag.Error = ret ? "导入成功" : "导入失败"; return(View()); }