public ActionResult FileUpload(UploadExcelFileModel uploadFile) { var model = new ServiceUploadModel(); if (!ModelState.IsValid) { foreach (ModelState state in ModelState.Values) { foreach (ModelError error in state.Errors) { model.RowErrors.Add(error.ErrorMessage); } } return(View("FileUploadComplete", model)); } DataTable dataTable = null; try { dataTable = FileProcessor.ConsumeFile(uploadFile); } catch { model.RowErrors.Add("Corrupted file format. Please redownload the template and try again."); model.ProcessedRowCount = model.SuccessfulRowsCount = 0; return(View("FileUploadComplete", model)); } model = FileProcessor.Import((EducationSecurityPrincipal)User, TemplatePath, dataTable); return(View("FileUploadComplete", model)); }