IIS 7.0, Access 2007 and ASP.NET 2.0

Published 03 May 08 12:09 AM | steve schofield

I don't get a chance to write webpage code very often, but in my early days of doing samples, it was common to use an Access database.  Access 2007 is the latest version available.  The drivers weren't installed on my Windows Server 2008 server when I was trying to run an example.  I got the following error.

The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.

A quick search found the add-on, the link is listed below.  I don't recommend using Access for medium or higher volume applications, SQL Server or another database is appropriate.  This was a fun exercise and I wanted to share my experience.  Hope this helps.

2007 Office System Driver: Data Connectivity Components
-----------------
http://www.microsoft.com/downloads/thankyou.aspx?familyId=7554f536-8c28-4598-9b72-ef94e038c891&displayLang=en

My sample
-----------------
http://iislogs.com/articles/access2007/authors.aspx

Download the code
-----------------
http://iislogs.com/articles/access2007/authors.zip

Sample Code
-----------------
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="authors.aspx.vb" Inherits="_IISLogscom" %>

<!DOCTYPE html PUBLIC "-//W3C//D
TD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True"
            AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="ID"
            DataSourceID="SqlDataSource1">
            <Columns>
                <asp:CommandField ShowSelectButton="True" />
                <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False"
                    ReadOnly="True" SortExpression="ID" />
                <asp:BoundField DataField="Field1" HeaderText="First name"
                    SortExpression="Field1" />
                <asp:BoundField DataField="Field2" HeaderText="Last name"
                    SortExpression="Field2" />
                <asp:BoundField DataField="Field3" HeaderText="Book Title"
                    SortExpression="Field3" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server"
            ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
            ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>"
            SelectCommand="SELECT [ID], [Field1], [Field2], [Field3] FROM [Authors]">
        </asp:SqlDataSource>
   
    </div>
    </form>

</body>
</html>

Code Behind
-----------------
Partial Class _IISLogscom
    Inherits System.Web.UI.Page

End Class


Web.config file
-----------------
<?xml version="1.0"?>
<configuration>
    <connectionStrings>
        <add name="ConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=&quot;/App_Data/authors.accdb&quot;" providerName="System.Data.OleDb" />
    </connectionStrings>
</configuration>

Cheers,

Steve Schofield
Microsoft MVP - IIS

Filed under: ,

Comments

# IIS 7.0, Access 2007 and ASP.NET 2.0 - Steve Schofield Weblog said on May 3, 2008 01:07 AM:

Pingback from  IIS 7.0, Access 2007 and ASP.NET 2.0 - Steve Schofield Weblog

# No1 Microsoft Fan said on May 3, 2008 08:41 AM:

Posting these links on Shutdown day is just a coincidence. I&#39;m not a person who is unfriendly to

This Blog

News

Blogs

Hosting Needs

Misc components

Misc Links

Syndication