Asp.Net连接ACCESS数据库相对路径问题,web.config中如何使用相对路径及在类文件中调用这个相对路径(源代码)?
本人使用的是VS 2005,经过调试成功,具体如何实现,代码如下(VB.Net示例,C#方法一样,在这里就不用说了)
首先在web.config文件<appSettings>节点中加入如下代码:
<!--数据源-->
<add key="myds" value="Provider=Microsoft.Jet.OLEDB.4.0;Data source="/>
<!--数据库相对路径-->
<add key="myconn" value="App_Data//VinikeData.mdb"/>
然后,写个类文件,调用上面的定义,代码如下:
/'定义一个连接字符串,难点就在这里,网上很多用到了Server.MapPath,但是还是不行,注意这里用到了Request.MapPath(相对asp来说,这是asp所没用的)
Public connstr As String = ConfigurationSettings.AppSettings("myds") + HttpContext.Current.Request.MapPath("~") + (ConfigurationSettings.AppSettings("myconn").Trim())
接下来就不用说了,相信经常写类的都知道,嘿嘿。。。
还有一种更好的方法:这是Asp.net 2.0新增的功能,使用|DataDirectory|
Web.config文件中:
<add name="connstr" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|//db.mdb" providerName="System.Data.OleDb"/>