飘遥的Blog

C/C++/.NET
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ASP.NET 链接 Access 数据库路径问题最终解决方案

Posted on 2007-11-25 06:31  Zzx飘遥  阅读(558)  评论(2)    收藏  举报

当做小项目用 ASP.NET + Access 数据库时,总是遇到数据库路径问题,本人以前的解决方法是每次访问数据库时,把链接字符串以参数的形式传到数据访问层,实施起来相当麻烦,这次找到了一个比较好的方案,这是本人目前的最终解决方案(如题)  ^_^

解决方案为:

在 Web.Config 中配置 Access 数据库驱动和数据库文件名称。

请看代码:

<appSettings>
<add key="DBDriver" value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source ="/>
<add key="DBName" value="Company.mdb"/>
</appSettings>

在数据库访问层,如 OleDBHelper.cs 中获得 Access 数据库链接字符串。

/// <summary>
/// 从Web.Config取得数据库联接字符串
/// </summary>

//从配置文件中得到数据库名称
public static readonly string DBName = ConfigurationManager.AppSettings.Get("DBName").ToString();

//从配置文件中得到数据库驱动
public static readonly string DBDriver = ConfigurationManager.AppSettings.Get("DBDriver").ToString();

//得到数据库连接字符串
private static string DBConnectionString = DBDriver + HttpContext.Current.Server.MapPath(
HttpContext.Current.Request.ApplicationPath
+ "/App_Data/") + DBName;

//建立数据库连接对象
private static OleDbConnection OleDbConn = new OleDbConnection(DBConnectionString);

这样设置后,无论在任何子目录,都能通过以上代码正确的访问数据库。