Enterprise Library访问Access数据库
一直以来都用企业库访问MSSQL和ORACLE数据库,最近想了想,能不能用企业库调用Access这种桌面数据库,在网上查找了不少资料,总算把这个事搞定了,越来越发觉企业库的强大和方便。
一、web.config配置
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings,Microsoft.Practices.EnterpriseLibrary.Data" />
</configSections>
<dataConfiguration defaultDatabase="AccessConnectionString"/>
<connectionStrings>
<add name="AccessConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\housdata.mdb" providerName="System.Data.OleDb" />
</connectionStrings>
配置中需要注意的一个地方就是Access数据库要存放在App_Data文件夹下,这样就可以通过相对路径调用Access数据库。
二、代码调用
protected Database DbHelper = DatabaseFactory.CreateDatabase("AccessConnectionString");
public DataTable GetSale()
{
string sqlText = "SELECT * FROM Sale";
DbCommand command = DbHelper.GetSqlStringCommand(sqlText);
return DbHelper.ExecuteDataSet(command).Tables[0];
}