未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0

 直接给出下载链接,随着时间推移可能失效,下面给更通用的方法:

百度搜索 accessdatabaseengine下载

选中  :中文简体

 注意是: 不要选择X64,因为对有些情况无效,例如:

数据库版本号:  Microsoft SQL Server 2017 (RTM-GDR) (KB4505224) - 14.0.2027.2 (X64)   Jun 15 2019 00:26:19   Copyright (C) 2017 Microsoft Corporation  Express Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: ) 

服务器操作系统:server2016

---------------------------------------------------------------------

转载资料A:https://www.cnblogs.com/jinianjun/archive/2011/12/05/2276679.html

解决办法:

http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe下载。然后安装就行了。

本错误是由于你使用了ACCESS2007版本建立的数据库,但服务器中没有相配合使用的程序,所以出错.

未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidOperationException: 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

下载2007 Office system 驱动程序:数据连接组件安装

http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe

此下载将安装一组组件,非 Microsoft Office 应用程序可以使用它们从 2007 Office system 文件中读取数据,
例如从 Microsoft Office Access 2007(mdb 和 accdb)文件以及 Microsoft Office Excel 2007(xls、xlsx 和 xlsb)文件中读取数据。
这些组件还支持与 Microsoft Windows SharePoint Services 和文本文件建立连接。

此外,还会安装 ODBC 和 OLEDB 驱动程序,供应用程序开发人员在开发与 Office 文件格式连接的应用程序时使用。
---------------------------------------------------------------------------------------------------------------------------------------------------
使用此下载:
如果您是应用程序用户,请查阅应用程序文档以获得有关如何使用相应的驱动程序的详细信息。
 
如果您是使用 OLEDB 的应用程序开发人员,请将 ConnectionString 属性的 Provider 参数设置为“Microsoft.ACE.OLEDB.12.0”
如果要连接到 Microsoft Office Excel 数据,请将“Excel 12.0”添加到 OLEDB 连接字符串的扩展属性中。
 
如果您是使用 ODBC 连接到 Microsoft Office Access 数据的应用程序开发人员,
请将连接字符串设置为“Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=path to mdb/accdb file”
 
如果您是使用 ODBC 连接到 Microsoft Office Excel 数据的应用程序开发人员,
请将连接字符串设置为“Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=path to xls/xlsx/xlsm/xlsb file”
 

或者:
解决办法1 (验证可以了)
  选择 该应用程序的 应用程序池 ------>选择高级设置 --------->启用32位应用程序 ------->true 
 
解决办法2
  Microsoft.ACE.OLEDB.12.0是不能再x64上使用的,你要强制把你的web application编译成x86再发布到Win08 x64上,记得在Application pool上设置Enable 32bit Application = true。
(没有验证)

https://jingyan.baidu.com/article/63f236284ac3280208ab3dc3.html

--------------------------------------

原文地址:https://www.cnblogs.com/hao-1234-1234/p/13084366.html