я получаю этот вопросНекоторая проблема с поставщиком «Microsoft.ACE.OLEDB.12.0» не зарегистрирована на локальном компьютере ».
Некоторые вопрос о «провайдер„Microsoft.ACE.OLEDB.12.0“не зарегистрирован на локальном компьютере ..
Я уже установлен Microsoft Access Database Engine 2010 Redistributable и 2007 один на серверной машине, на которой есть iis и SQL-сервер. Когда я отлаживаю VS на сервере, нет ошибки, и она работает хорошо, хотя когда я пытаюсь импортировать excel других ПК через интернет с протоколом HTTP он возвращает ошибку, если я попробую его на сервере через http-страницу, он возвращает "The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine."
эта ошибка.
Я могу использовать его только для отладки и уже иметь доступ к базе данных, как я могу ее исправить?
Вот мои ConnectionStrings в веб-конфигурации
<add name ="Excel03ConString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR={1}'"/>
<add name ="Excel07ConString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR={1}'"/>
пс: Я получил ошибку как oledb.4.0 и oledb.12.0
Вы на x86 или x64? Поставщик OLEDB не работает на 64 бит. Вы можете попробовать перекомпилировать свой код для x86 и посмотреть, поможет ли это. –
@JakobChristensen сервер 64 бит. Как я могу узнать, что проект работает на x64 или нет, и как я могу изменить его на x86, и если я изменюсь, будет ли он исцелен, это будет любая проблема? // edit: он отлично работает при отладке в VS, могу ли я его изменить в IIS или VS? – user3305037
В VS проверьте свою целевую платформу для своего проекта. Смотрите это изображение: http://1.bp.blogspot.com/-ocoFqAWeR-A/TajKY72tGUI/AAAAAAAAACg/UAqRzM06JOU/s1600/project_settings.png. Вы можете установить целевую платформу для x86. –