Ошибка загрузки файла Excel в ASP.NET

У меня есть приложение, на котором я загружаю файл Excel и отображаю данные внутри GridView. Мои проблемы теперь в том, что, когда я загружаю файл, он загружается. Если данные содержат MIX интергеров и текстовых данных, текстовые данные не отображаются внутри Gridview и DataSet, на которых я загружаю его.

public DataTable GetExcelData(string _FileName) { DataSet ds = new DataSet(); string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _FileName + ";Extended Properties=Excel 8.0;"; OleDbConnection connection = new OleDbConnection(connectionString); connection.Open(); string sheetname = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null).Rows[0]["table_name"].ToString(); try { OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM [" + sheetname + "]", connection); adapter.Fill(ds); connection.Close(); return ds.Tables[0]; ; } catch (Exception ex) { try { if (connection.State == ConnectionState.Open) connection.Close(); } catch (Exception) { } throw ex; } } 

Это код, из которого я загружаю данные в DataSet.

Ill показать вам данные примера


Column1

  1. 1234
  2. 2345
  3. 4567
  4. T123
  5. 123q
  6. 6789

Если мы загрузим лист Excel с данными выше, он отобразит его только так.


Column1

  1. 1234
  2. 2345
  3. 4567
  4. ,
  5. ,
  6. 6789

Вы можете видеть, что в Above T123,123Q отсутствует (это будут BLANK-данные). Это проблема с моим приложением, когда я загружаю лист Excel.

Кто-нибудь сталкивался с такой ситуацией? Есть ли способ разрешить это?

Попробуйте эту строку подключения … Теперь ее работа прекрасна

Эта строка соединения определяется с помощью ее работы для XLS

 string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _FileName + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'" 

Для XLSX

 string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + _FileName +";Extended Properties='Excel 12.0;HDR=YES;'" 
  • «Внешняя таблица не в ожидаемом формате». при чтении файла excel (.xlsx), который сохраняется в формате 2010 года?
  • Ошибка SSIS при настройке задачи потока данных .xls Excel 5.0 / 95
  • Не удалось обновить текущее время в excel, используя oledb
  • Обновите Excel 2007 с помощью OleDb
  • Механизм базы данных Microsoft Access не смог найти объект Worksheet - ACE OLEDB
  • Динамическая команда CREATE TABLE создает только «общий» тип данных столбца (соединение Excel)
  • Научная нотация при импорте из Excel в .Net
  • C # с Dll должен импортировать в моем проекте, что он может работать без instal Excel
  • Обновление ячейки Excel с помощью нечетных данных в C #
  • Доступ к книге Excel через ADODB - одновременное использование пользователей
  • Правильный способ получить имена листов Excel с использованием C # и oledb
  • Interesting Posts

    Возьмите только часть строк в файле Excel

    Excel Extraction, извлечение трех числовых символов в строке

    Формула электронных таблиц для сбора всех совпадений в одну ячейку

    Объединение нескольких операторов (функций)

    Невозможно найти переменную объекта метода

    Power Query -> Преобразование запятой в период и получение десятичных чисел

    Цвет линии / цвета маркерной линии Excel VBA

    Комбинированный алгоритм в Excel VBA

    Извлечение информации из внешней книги из текущей открытой книги с использованием пользовательской формы

    Поставщик Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере, который не работает в Excel, но работает для Access

    Workheetfunction.average возвращающая ошибка, когда диапазон содержит пустые ячейки или ячейки с текстом

    Excel SUMIFS, который добавляет значения, если столбец a или столбец b содержит указанное значение

    Восстановление жирного текста в ячейке с помощью POI

    Как читать данные из Excel, начиная с данной строки и получать правильный вывод типа

    ошибка при представлении экспорта данных в Excel

    Давайте будем гением компьютера.