/// <summary> /// 导入试题 /// </summary> /// <returns></returns> public string Improt() { var file = Request.Files["files"]; string path = Server.MapPath("/QuestionImport/"); file.SaveAs(path + file.FileName); DataTable dt = new DataTable(); IWorkbook workbook; string xls = Path.GetExtension(path + file.FileName); if (xls == ".xlsx") { workbook = new XSSFWorkbook(file.InputStream); } else { workbook = new HSSFWorkbook(file.InputStream); } if (workbook == null) { return(""); } ISheet sheet = workbook.GetSheetAt(0); IRow header = sheet.GetRow(sheet.FirstRowNum); for (int i = 0; i < header.LastCellNum; i++) { DataColumn col = new DataColumn(header.GetCell(i).ToString()); dt.Columns.Add(col); } for (int i = (sheet.FirstRowNum + 1); i <= sheet.LastRowNum; i++) { IRow row = sheet.GetRow(i); DataRow dr = dt.NewRow(); for (int j = header.FirstCellNum; j < header.LastCellNum; j++) { if (row.GetCell(j) != null) { dr[j] = row.GetCell(j).ToString(); } else { dr[j] = ""; } } dt.Rows.Add(dr); } string json = Newtonsoft.Json.JsonConvert.SerializeObject(dt); List <BackQuestionBank> list = Newtonsoft.Json.JsonConvert.DeserializeObject <List <BackQuestionBank> >(json); foreach (var item in list) { item.UnitId = Convert.ToInt32(Request["UnitId"]); } int succ = question.Import(list); int lose = list.Count - succ; List <int> count = new List <int>() { succ, lose }; Users us = (Users)Session["User"]; if (succ > 0) { logs.Add(us.ID, "导入试题", 1); } else { logs.Add(us.ID, "导入试题", 0); } return(Newtonsoft.Json.JsonConvert.SerializeObject(count)); }