web.config里写数据库连接字符串的问题。

reddust 2003-11-10 05:44:15
怎么实现相对路径呢,<add key="Default_ConnString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\aspx\news\global.mdb"/>
...全文
27 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
rferen2003 2004-01-08
  • 打赏
  • 举报
回复
对了,~代表根目录
rferen2003 2004-01-08
  • 打赏
  • 举报
回复
<add key="Default_ConnString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=~\aspx\news\global.mdb"/>
reddust 2003-11-11
  • 打赏
  • 举报
回复
up
reddust 2003-11-10
  • 打赏
  • 举报
回复
因为我必须在程序中用这种方式获取链接字符ConfigurationSettings.AppSettings[] ,为了程序的通用性不能用Server.MapPath
webdiyer 2003-11-10
  • 打赏
  • 举报
回复
没有办法直接将相对路径保存在web.config的连接字符串值中,但可以用一个笨办法,在web.config中另外加入一个数据库路径字符串值,象这样:

<add key="Default_ConnString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=@dbpath"/>
<add key="DbPath" value="/应用程序名/数据库所在文件夹/数据库名.mdb"/>

然后在程序中这样建议数据库连接:
string dbPath=Server.MapPath(ConfigurationSettings.AppSettings["dbpath"]);
OleDbConnection conn=new OleDbConnection(ConfigurationSettings.AppSettings["ConnStr"].Replace("@dbpath",dbPath));

虽然麻烦了一点,但除非用绝对路径,否则也没有什么好办法。
Abac 2003-11-10
  • 打赏
  • 举报
回复
phpmysql(-=freewolf=-) 兄,好勤快:-)
zxiaox 2003-11-10
  • 打赏
  • 举报
回复
WebConfig 文件的上级目录用 (../) 本级目录用 (./)试试!
phpmysql 2003-11-10
  • 打赏
  • 举报
回复
<add key="Default_ConnString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=/YourApp/db/global.mdb"/>
这样应该可以吧
Abac 2003-11-10
  • 打赏
  • 举报
回复
<add key="Default_ConnString" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=/YourApp/db/global.mdb"/>
fletcher 2003-11-10
  • 打赏
  • 举报
回复
Server.MapPath()

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧