Загрузка Excel на Windows Server (Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере) - PullRequest
1 голос
/ 13 декабря 2011

Я пытаюсь загрузить файл Excel.

У меня есть тестовый сайт ASP.NET на локальном компьютере, где загрузка работает нормально.

Однако, когда я помещаю один и тот же сайт на сервер, а затем пытаюсь загрузить файл, он выдает мне сообщение об ошибке: «Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере»

Вот моя строка подключения (для localhost):

cn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fullpathname + ";Extended Properties=;Excel 12.0;HDR=No;IMEX=1");

Это работает на сервере с (Microsoft.JET.OLEDB.4.0), но то же самое выдает ошибку на моем локальном хосте, поэтому наоборот:

cn = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + fullpathname + ";Extended Properties=;Excel 12.0;HDR=No;IMEX=1");

Я пытался найти это в Google, но не смог найти хорошего решения, попробовал ответить на некоторые вопросы, такие как изменение конфигурации сборки, но все еще не работает. Прямо сейчас в моей визуальной студии конфигурация сборки установлена ​​на «Любой процессор» (со ссылкой на это SO: Вопрос )

На моем сервере не установлен Microsoft Office, это может быть проблемой?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 13 декабря 2011

Вам необходимо сначала загрузить файл Excel на свой сервер, а затем ваш метод прочитает этот файл Excel, расположенный на вашем сервере.

Чтение и отображение данных из файла Excel (.xsl или .xlsx) в ASP.NET

Поделитесь «YourFileFolder», куда будет загружен файл Excel, и добавьте учетную запись «Network Service», имеющую разрешение на чтение / запись

Привет

0 голосов
/ 30 июня 2014

Я получил ту же ошибку, после некоторого поиска в Google, я получил решение проблемы. Я исправил проблему, установив «Драйвер системы Office 2007: компоненты подключения к данным» по ссылке ниже. http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=23734

...