之前文章中我介绍过 DotNet 项目中集成 Enterprise Library 数据库访问模块 ,使用的是 SQL Server 数据库,其实 Enterprise Library Data Application AccessBlock 可以连接很多 ADO.NET 支持的数据库。那么 Enterprise Library 支持 Access 数据库吗?答案是肯定的。你也可以使用 DAAB,通过 OLEDB 或 ODBC 连接 Access 数据库。
在上篇文章中我们把相关的配置信息写在配置文件中,所以我们只需修改配置文件就可以了。
OLEDB:
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
</configSections><dataConfiguration defaultDatabase="ConnectionString" /><connectionStrings>
<add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\blog.mdb" providerName="System.Data.OleDb" />
</connectionStrings>
ODBC:
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
</configSections><dataConfiguration defaultDatabase="ConnectionString" /><connectionStrings>
<add name="ConnectionString" connectionString="Dsn=blog;" providerName="System.Data.Odbc" />
</connectionStrings>
使用 Database 操作数据库,代码如下:
Database database = DatabaseFactory.CreateDatabase ();
DbCommand command = database.GetSqlStringCommand ("SELECT * FROM Users");
DataSet customer = database.ExecuteDataSet (command);