Я использую ASP.Net Boilerplate v3.2.4 и у меня проблемы с загрузкой файла Excel в контроллер MVC с помощью HttpRequestBase из Angularjs v1.7.5 с использованием FileUploader
Итак, при попытке загрузить файл Excel возникло исключение, а языком сайта является арабский , например:
Указанное время не поддерживается в этом календаре.Это должно быть между 30.04.1900 00:00:00 (григорианская дата) и 16.11.2077 23:59:59 (григорианская дата) включительно.Имя параметра: время
AppServiceBase:
Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
Код Angulrjs:
appModule.controller('usersIndex', [ 'FileUploader', function (fileUploader) {
var vm = this;
vm.logoUploader = new fileUploader({
url: "User/UploadExcel",
headers: {
"X-XSRF-TOKEN": abp.security.antiForgery.getToken()
},
queueLimit: 1,
removeAfterUpload: true
});
uploader.onSuccessItem = function (item, ajaxResponse, status) {
if (ajaxResponse.success) {
abp.message.success("success");
} else {
abp.message.error("error");
}
};
vm.uploadLogo = function () {
vm.logoUploader.uploadAll();
};
}
Код контроллера:
[HttpPost]
public async Task<JsonResult> UploadExcel()
{
if (Request.Files.Count <= 0 || Request.Files[0] == null)
{
throw new UserFriendlyException(L("File_Empty_Error"));
}
var file = Request.Files[0];
var usersList = new List<UserListDto>();
using (var package = new ExcelPackage(file.InputStream))
{
var currentSheet = package.Workbook.Worksheets;
var workSheet = currentSheet.First();
usersList.Add(new UserListDto()
{
UserName = workSheet.Cells[1, 1].Value.ToString(),
PhoneNumber = workSheet.Cells[1, 2].Value.ToString()
});
}
return Json(new AjaxResponse(usersList));
}
Содержимое EXCEL:
Я пыталсяотладка кода C # и кода Javacript и исключение не из них
Я ценю любую помощь
Спасибо
--- ОБНОВЛЕНИЕ ---
ВОЗМОЖНОЕ РЕШЕНИЕ:
Я нашел решение для себя, я использовал Dto для хранения данных перед загрузкой.И бывает, что этот Dto содержит даты, которые я не использовал напрямую, но он существует.
К сожалению, я не нашел решения проблемы культуры.