未在本地计算机,上注册“Microsoft.ACE,OLEDB.12.0”提供程序
- 问题
- 原因分析
- 解决方案:
- 第一步
- 第二步
问题
本地导入excel没有问题,发布到服务器上出现System,InvalidOperationException:未在本地计算机,上注册“Microsoft.ACE,OLEDB.12.0”提供程序。
原因分析
1、应用程序(32 位代码)和与 64 位 Microsoft Access 一同安装的 64 位 ACE 提供程序之间的版本不匹配
2、系统上没有安装或没有正确配置用于访问 Microsoft Access 数据库(.mdb 或 .accdb 文件)的 OLE DB 提供程序。
解决方案:
第一步
Internet信息服务(IIS)管理器→应用程序池→选中项目→高级设置→启动32位应用程序改为 “ true ”
(注:如何在这一步改好之后,重新启动一下,看看可以导入没,还是不行再看第二步)
第二步
- 服务器上没有安装AccessDatabaseEngine应用程序,双击安装这两个文件就行了,在服务器上运行这其中一个程序就行了,主要还是看你是32位还是64位。
- 通常,如果你的应用程序是 64 位的,你需要安装 64 位的 Access Database Engine。但是,请注意,即使你安装了 64 位的 Office,Access 仍然是 32 位的,因此你可能需要安装 32 位的 Access Database Engine。
链接: 下载AccessDatabaseEngine