JatinKhimani Ответов: 0

'Microsoft.ace.oledb. 12. 0' не читает все строки из файла. xlsx на сервере (IIS7)


Я знаю, что на этот вопрос есть дюжина ответов и постов, но ничего не работает для меня.

У нас есть мое приложение MVC4, и я развернул его на IIS7 на своем сервере и еще на одной машине, где у нас не установлена visual studio.

Мы делаем импорт / экспорт данных из / в excel для выполнения массового ввода.

у нас есть данные около 20000 на одном листе в формате. xlsx Office 2007(файл сохраняется как рабочая книга Excel).

Теперь, когда я читаю данные с помощью следующего кода, он просто читает данные только около 4000-5000 строк.

Весь этот нижеприведенный код отлично работает на моей локальной машине, где я делаю код и читаю все 20000 строк данных из книги " Excel 97-2003 Workbook with .xls"
но не работает с "Excel Workbook with. xlsx".

private void FillDataSet(HttpPostedFileBase file, DataSet ds)
    {
      using (
        var con =
          new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" File Path";Extended Properties=Excel 12.0"))
      {
          con.Open();
          var dtSchema = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
          var strSheetName = "";
          strSheetName = dtSchema.Rows[0]["TABLE_NAME"].ToString();          
          var cmd = new OleDbCommand();
	  var da = new OleDbDataAdapter();
	  cmd.Connection = con;
	  cmd.CommandType = CommandType.Text;
	  cmd.CommandText = "SELECT * FROM [" + strSheetName + "]";
	  da = new OleDbDataAdapter(cmd);
	  da.Fill(ds);        
      }
    }


Я прошел через следующие шаги и решения, но это не работает для меня.

- Установка Распространяемого Пакета Microsoft Access Database Engine 2010
- Установка Драйвера Системы Office 2007: Компоненты Подключения К Данным


мы путаем, почему он работает на моей локальной машине, а не на сервере.
Пожалуйста, предоставьте любую идею или решение по этому вопросу..

Что я уже пробовал:

Я уже пробовал это:
-В обозревателе решений щелкните правой кнопкой мыши свой проект и выберите пункт Свойства
- Перейдите на вкладку сборка
-Измените целевую платформу с: любой процессор на x86 | любой процессор на x64
-Перестройте свое решение заново
-Также внесены изменения в предварительную настройку IIS с включением 32-битного приложения как True/False.

F-ES Sitecore

Вы бы позвонили механику и спросили: "моя машина не работает, как мне ее починить?" Если нет, то почему вы думаете, что "не работает" дает нам достаточно информации, чтобы помочь здесь?

JatinKhimani

Спасибо за заботу..
Извините, если я что-то пропустил
но в Excel есть 20000 записей, которые я могу прочитать из приведенного выше кода на моей локальной машине, где я делаю код.
Но когда я развертываю те же библиотеки DLL на сервере, он не читает все 20000 строк, а просто читает 4000-5000 строк.
Более или менее он читает все 20000 строк, когда я сохраняю как этот файл excel "Excel 97-2003 Workbook".

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация для этого..

0 Ответов