解决方案一:
在 web.config 中配置 access 数据库教程驱动和数据库文件名称。
请看代码
在数据库访问层,如 oledbhelper.cs 中获得 access 数据库链接字符串。
/**////
/// 从web.config取得数据库联接字符串
///
//从配置文件中得到数据库名称
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);
这样设置后,无论在任何子目录,都能通过以上代码正确的访问数据库。
解决方案二:
程序中的数据访问类中我把sqlconnstring和dbpath取出来连接成一个字符串conn_string_non_dtc
public static readonly string conn_string_non_dtc = system.configuration.configurationmanager.appsettings[sqlconnstring].tostring() + system.web.httpcontext.current.server.mappath(configurationmanager.appsettings[dbpath]) + ;;
更多信息请查看IT技术专栏