public Result <List <QuestionsDto> > GetAllQuestionsByType([FromQuery] string questionType) { string questionTypeId = null; if (questionType == "Single")//单选 { questionTypeId = _exerciseTypeService.GetIdByType("单选").Data.ToString(); } if (questionType == "Multiple")//多选 { questionTypeId = _exerciseTypeService.GetIdByType("多选").Data.ToString(); } if (questionType == "Judge")//判断 { questionTypeId = _exerciseTypeService.GetIdByType("判断").Data.ToString(); } if (questionType == "Completion")//填空 { questionTypeId = _exerciseTypeService.GetIdByType("填空").Data.ToString(); } if (questionType == "Case")//案例 { questionTypeId = _exerciseTypeService.GetIdByType("案例分析").Data.ToString(); } if (questionType == "Simple")//简答 { questionTypeId = _exerciseTypeService.GetIdByType("简答").Data.ToString(); } if (string.IsNullOrEmpty(questionTypeId)) { return(Result <List <QuestionsDto> > .Fail("不存在该类型试题")); } return(_exerciseService.GetExercise(questionTypeId)); }
public void UploadDateTemplateFile(List<IFormFile> files) { List<Question> questions = new List<Question>(); long size = 0; #region string fileSaveRootPath = Path.Combine(_webHostEnvironment.WebRootPath, "UploadFiles_"+ System.DateTime.Now.ToString("yyyyMMddHHmmss"));//文件保存路径 if (!Directory.Exists(fileSaveRootPath)) { Directory.CreateDirectory(fileSaveRootPath); } #endregion foreach (var file in files)//遍历上传的Excel文件列表 { #region 获取到对应的Excel文件 var fileName = file.FileName.Trim('"');//获取文件名 fileName = Path.Combine(fileSaveRootPath, fileName);//文件上传的路径 size += file.Length; using (FileStream fs = System.IO.File.Create(fileName))//创建文件流 { file.CopyTo(fs);//将上载文件的内容复制到目标流 fs.Flush();//清除此流的缓冲区并导致将任何缓冲数据写入 } #endregion #region 读取Excel文件 using (ExcelPackage package = new ExcelPackage(new FileInfo(fileName))) { ExcelWorksheet worksheet = package.Workbook.Worksheets[1]; int rowCount = worksheet.Dimension.Rows; int colCount = worksheet.Dimension.Columns; for (int row = 4; row < rowCount+1; row++) { if (worksheet.Cells[row, 1].Value != null && worksheet.Cells[row, 2].Value != null && worksheet.Cells[row, 3].Value != null) { questions.Add(new Question() { QuestionTypeId = _exerciseTypeService.GetIdByType(worksheet.Cells[row, 1].Value.ToString()).Data, Content = worksheet.Cells[row, 2].Value.ToString(), Answer = worksheet.Cells[row, 3].Value.ToString(), AnswerNote = worksheet.Cells[row, 4].Value == null ? string.Empty : worksheet.Cells[row, 4].Value.ToString(), QuestionTypeName = worksheet.Cells[row, 1].Value.ToString()//添加这个字段主要是为了管理界面便于取值 }) ; } else { } } } #endregion } if (_exerciseService.AddQuestions(questions).IsSuccess) { ViewBag.Message = $"{files.Count}个文件 /{size}字节上传成功!"; } else { ViewBag.Message = "上传失败!"; } #region if (Directory.Exists(fileSaveRootPath)) { Directory.Delete(fileSaveRootPath, true); } #endregion }