Access相对路径
链接字符串在config里写的,用相对路径时好时坏,不知道他是怎么找的。谁能说下原理。
还有更郁闷的是,好不容易调好了,放到iis里,报错,路径直接指到C://windows/system32里。说找不到'C:\WINDOWS\system32\Database\LSDB.mdb', 他怎么找到的C盘下?
------解决方案--------------------~/file.mdb
------解决方案--------------------参考:
http://download.csdn.net/source/204079
或者:
http://download.csdn.net/source/320060
------解决方案--------------------就是在iis里报错报的离谱
---------------
一点也不离谱...IIS的进程用户的工作目录就是C:\WINDOWS\system32...不是才离谱...
------解决方案--------------------<add key="OleDbConn" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=~/Database/LSDB.mdb;Persist Security Info=False"/>
------解决方案--------------------datasource只保存文件名,路径在Server.MapPath中动态获取
------解决方案--------------------把数据库放到"app_data"中
在web.config中加以下:
<connectionStrings>
<add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\8888888888.mdb" providerName="System.Data.OleDb" />
</connectionStrings>
------解决方案--------------------如果是相对路径,应该要把这个文件饱含到项目中吧
------解决方案--------------------把数据库放到"app_data"中
在web.config中加以下:
<connectionStrings>
<add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ¦DataDirectory ¦\8888888888.mdb" providerName="System.Data.OleDb" />
</connectionStrings>
正解
------解决方案--------------------你的路径不对吧
¦DataDirectory ¦\是相对路径