public ActionResult UploadExcelMembersFile(string fileType) { Dictionary <int, string> returnMsgDictinary = new Dictionary <int, string>(); FileHandleDetails fileHandleDetails = new FileHandleDetails(); SetDictinaryReturnMsg(returnMsgDictinary); var context = System.Web.HttpContext.Current.Request; string fileName = null; string pathDirectory = null; string validateMsg; //Core.Services.Logger.InsertHovalaLog(LogType.Debug, "UploadExcelhovalaFile", System.Web.HttpContext.Current.User.Identity.Name); if (context.Files != null && context.Files.Count > 0) { try { HttpPostedFile file = context.Files["file"]; if (file != null) { //This one take a lot of time if (Enum.IsDefined(typeof(ExcelFileType), fileType) == false) { fileHandleDetails.FileUploadMsg = returnMsgDictinary[(int)FileReturnMsg.FileTypeIncorrect]; return(Content(new JavaScriptSerializer().Serialize(fileHandleDetails))); } if (CheckIsUploadFileExcelFormat(file) == false) { fileHandleDetails.FileUploadMsg = returnMsgDictinary[(int)FileReturnMsg.FileExtensionIncorrect]; return(Content(new JavaScriptSerializer().Serialize(fileHandleDetails))); } //If file is OK saving it to folder switch ((ExcelFileType)Enum.Parse(typeof(ExcelFileType), fileType)) { case ExcelFileType.CoecoMembers: pathDirectory = ConfigurationManager.AppSettings["SaveUploadedMembersFilePath"]; break; } fileName = CheckIsFilesSameByByteAndSave(fileType, file, pathDirectory); if (fileName == null) { fileName = SaveUploadExcelFile(System.Web.HttpContext.Current.User.Identity.Name, file, pathDirectory, fileType); } validateMsg = _fileHandle.ReadMembersExcelFile(file.FileName, pathDirectory, fileName, System.Web.HttpContext.Current.User.Identity.Name, fileHandleDetails); if (validateMsg == FileReturnMsg.DuplicatedRowsProblem.ToString()) { return(SetDataForReturnAndDeleteFileWithLog(returnMsgDictinary[(int)FileReturnMsg.DuplicatedRowsProblem], fileHandleDetails, false, true, fileName)); } else if (validateMsg == FileReturnMsg.FileWasHandle.ToString()) { validateMsg = returnMsgDictinary[(int)FileReturnMsg.FileWasHandle]; } else if (validateMsg == FileReturnMsg.MainUploadFileFailed.ToString()) { validateMsg = returnMsgDictinary[(int)FileReturnMsg.MainUploadFileFailed]; } return(SetDataForReturnAndDeleteFileWithLog(validateMsg, fileHandleDetails, true)); } else { return(SetDataForReturnAndDeleteFileWithLog(returnMsgDictinary[(int)FileReturnMsg.NoFileToUpload], fileHandleDetails, false)); } } catch (Exception ex) { _loggerService.InsertLogMessage(LogType.Error.ToString(), $"Failed on UploadExcelMembersFile {ex.ToString()}", System.Web.HttpContext.Current.User.Identity.Name); return(SetDataForReturnAndDeleteFileWithLog(returnMsgDictinary[(int)FileReturnMsg.ErrorUploadFile], fileHandleDetails, false, true, fileName)); } } return(SetDataForReturnAndDeleteFileWithLog(returnMsgDictinary[(int)FileReturnMsg.NoFileToUpload], fileHandleDetails, false)); }