Here I will explain “the 'microsoft.ace.oledb.12.0' provider is not registered on the local machine” problem solution in asp.net using C# and VB.NET.
In previous articles I explained Asp.net, C#, VB.NET, SQL interview questions, Send values from one page to another page using QueryString, Joins in SQL Server, Highlight Gridview records based on search and many articles relating to Gridview, SQL ,jQuery,asp.net, C#, VB.NET. Now I will explain how to solve the problem of “the 'microsoft.ace.oledb.12.0' provider is not registered on the local machine” in asp.net using C# and VB.NET.
In one application I got requirement like Read or Import data from excel sheet to gridview and upload excel data to SQL database once implementation completed I tested it in local everything working fine. After that I deployed application in server machine which contains IIS 7 version and tried to run then I got an error like "the 'microsoft.ace.oledb.12.0' provider is not registered on the local machine” that would be like as shown below
We can solve this error by using two methods
1. Open IIS 7 manager and select the application pool corresponding to your application >> Right click on your Application Pool >> Select Advanced Settings like as shown below
2. Once settings opened >> Select an option Enable 32-bit Applications and change option to true
3. Once you set this property restart your application pool and try I hope that problem will fix.
Still if the problem is not fixed check below method
We will get this error whenever server was missing required component to read excel file. To solve this error you need to download the Access database component from Microsoft site and need to install it. Download software from below url
Once office access component installed in your server automatically this error will gone. Everything will work as you expected.
Note: Once this component installed in your server no need to restart your server.