Как читать двоичные данные в datatable в C# ?
Используя управление загрузкой файлов, я читаю данные Excel как двоичные данные.
Теперь мне нужно преобразовать двоичные данные в datatable, чтобы сохранить их в БД.
Пожалуйста помочь.
HTML
&ЛТ;входной тип="файл" название="fileChartOfAccounts" НГ-файлов="getTheFiles (файлов)" идентификатор="fileChartOfAccounts" /&ГТ;
клиентская часть кода java script:
$scope.getTheFiles = function ($files) { debugger; angular.forEach($files, function (file) { $scope.filesUploaded.push(file); }); $scope.UploadFilesEnabled = true; $scope.$apply(); };
if ($scope.filesUploaded.length > 0) { $("#ModalProcessingSharefileUpload").modal("show"); var request = { method: 'POST', url: baseUrl + 'api/fileuploadnotedtransaction/UploadFiles', data: formdata, headers: { 'Content-Type': undefined } }; // SEND THE FILES. $http(request) .success(function (d) { //debugger; $scope.clear(); $("#ModalProcessingSharefileUpload").modal("hide"); }) .error(function (err) { //debugger; $scope.clear(); $("#ModalProcessingSharefileUpload").modal("hide"); }); }
Серверная сторона в контроллере
[HttpPost()] public void UploadFiles() { System.Web.HttpFileCollection hfc = System.Web.HttpContext.Current.Request.Files; for (int iCnt = 0; iCnt <= hfc.Count - 1; iCnt++) { System.Web.HttpPostedFile hpf = hfc[iCnt]; BinaryReader b = new BinaryReader(hpf.InputStream); byte[] binData = b.ReadBytes(hpf.ContentLength); MemoryStream memoryStreamOfFile = new MemoryStream(binData); BinaryFormatter formatter = new BinaryFormatter(); memoryStreamOfFile.Seek(0, SeekOrigin.Begin); DataTable dt = (DataTable)formatter.Deserialize(memoryStreamOfFile); } }
Что я уже пробовал:
Я погуглил его и перепробовал много вещей, но ни одна из них не сработала.
Maciej Los
Я погуглил его и перепробовал много вещей, но ни одна из них не сработала. - А что именно вы пробовали?
Karthik_Mahalingam
опубликуйте код.
Member 10468587
Я знаю тебя с 2013 года. Даже меня зовут Картик. давным-давно у нас был хороший разговор.Отправленный код для вас.
Karthik_Mahalingam
хорошо, проверю и дам вам знать.
Member 10468587
спасибо.
Karthik_Mahalingam
проверьте это http://stackoverflow.com/a/11239895
Member 10468587
ладно.
Karthik_Mahalingam
вам придется использовать библиотеку EPPLus.
Member 10468587
не удалось найти Office open xml dll
Member 10468587
Спасибо тебе
Member 10468587
спасибо тебе