asp.net操作ACCESS数据库路径问题的解决方案、实用技巧
2011-05-15 18:33
357 查看
解决方案为: 在 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); 这样设置后,无论在任何子目录,都能通过以上代码正确的访问数据库。 |
中数据库连接字符串的数据库路径。
好多人的web.config中的写法如下:
<appSettings>
<add key="OLEDBCONNECTIONSTRING" value="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=E:/web/App_Data/Data.mdb)"></add>
</appSettings>
程序中这样写:
MyConn = new OleDbConnection(System.Configuration.ConfigurationManager.AppSettings["OLEDBCONNECTIONSTRING"]); //注释一下:VS2005和VS2003中的ConfigurationSettings写法不一样,具体区别自己查吧
这样程序运行时经常提示诸如以下的错误:
'C:/WINDOWS/system32/~/App_Data/Data.mdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。 Data Source=~/App_Data/Data.mdb
就算用绝对路径正确,那么移植程序时还要去修改web.config,所以比较麻烦。
也有在web.config中使用象ASP那样的Server.MapPath取数据库路径的,但web.config不认识Server.MapPath,此方法也行不通。
后来通过摸索、参考其它程序,总结出如下方法,可以方便的移植程序路径而不必再去修改ACCESS数据库路径。
我在web.config中的写法如下:
<appSettings>
<add key="SQLConnString" value="provider=microsoft.jet.oledb.4.0;data source="/>
<add key="dbPath" value="~/App_Data/mydata.mdb"/>
</appSettings>
程序中的数据访问类中我把"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"]) + ";";
End of《ASP.NET连接ACCESS数据库web.config内路径最优写法
相关文章推荐
- IIS服务器下,用asp.net访问Access数据库遇到的路径问题解决方案
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- Asp.Net连接ACCESS数据库相对路径问题,web.config中如何使用相对路径及在类文件中调用这个相对路径
- ASP.NET 链接 Access 数据库路径问题最终解决方案
- Asp.Net中使用Access数据库配置文件使用相对路径问题
- ASP.NET Core 2.0 本地文件操作问题及解决方案
- Asp.Net连接ACCESS数据库相对路径问题
- Asp.Net 2.0连接ACCESS数据库相对路径问题,web.config中如何使用相对路径
- ASP.Net下如何解决关于Access数据库“操作必须使用一个可更新的查询”问题
- ASP.NET连接ACCESS数据库的相对路径问题
- Asp.Net连接ACCESS数据库相对路径问题 web.config中如何使用相对路径及在类文件中调用这个相对路径
- asp.net 文件路径问题,Png图片透明问题,js提示对象不支持属性和方法的解决方案
- ASP.NET 在IIS 操作Excel时出现的权限问题的解决方案
- ASP.Net 类库引用文件路径问题及解决方案
- asp.net使用office遇到的权限问题解决方案
- asp.net程序在调式和发布之间图片路径问题的解决方法
- ASP.net 路径问题 详细说明