新客网
首页 | 新闻 | 系统·网络·服务器·安全 | 工具·办公 | 编程·数据库 | 图象·网页·运营 | 硬件·存储 | 专题教程 | 论坛·old
 → 当前位置:首页 > 教程 > 编程开发 > Asp.net教程 > 正文

Access数据库在asp.net程序中相对路径的解决方法

XKER.COM   2006-11-23 10:13:42  来源:  收藏本文

好多朋友被ACCESS数据库在.net程序中相对路径的问题困扰,搞得每次移动程序都要去修改web.config
中数据库连接字符串的数据库路径。

好多人的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"]) + ";";
这是VS2005中的写法
我把CONN_STRING_NON_DTC定义成static readonly是为了使用方便。
好了,这样就可以随便移植你的程序而不用关心数据库的路径了,一劳永逸啊^_^,适合我这样的懒人!

上一篇教程:Object/DataSet Relational Mapping(对象/数据集关系映射)
下一篇教程:没有了
收藏本文】 【我要投稿】 【打印本文】 【论坛讨论】 【关闭窗口

相关文章
·用C#访问ACCESS数据库问题·Object/DataSet Relational Mapping(对象/数据
·在ASP.NET中使用AJAX的简单方法·轻松加密ASP.NET 2.0 Web程序配置信息
·ASP.NET 2.0 中 Treeview 的Checkboxes 选中根·使用ASP.Net Forms模式实现WebService身份验证
·ASP.NET2.0调用MySql的存储过程·DataGridView 的分页处理
·写个偷全国公交数据库的程序·ASP.NET生成高质量缩略图通用函数(c#代码)
·利用正则表达式去掉html代码·ASP.NET 2.0 中的 Theme 功能
·如何在页面之间传递数据量较大的复杂数据·SQL注入的高级应用ACCESS篇
·小技巧:让Apache支持ASP.NET·ASP.NET 配置文件层次结构和继承

学院文章搜索
  
推荐文章
·复杂电脑简单用:二十八款系
·构建可配置PHP应用程序的正
·理解防火墙Log与端口扫描的
·独门绝技!防木马三招两式
·安全使用网上银行的七点建
·限制网上行为 从WorkWin限
·无线技术在Linux操作系统中
·其实很简单——防火墙设置
·端口·木马·安全·扫描应
·Windows远程控制完全指南
阅读排行
·免费代理IP(每日更新)
·windows下如何修改右键菜单
·清除猖狂的Sxs.exe病毒
·DOS下对系统重新进行分区
·DOS常用命令
·编程过把瘾:自己动手写操
·DOS下常用的相关网络命令
·Fdisk分区详解
·超详细:用Macfee打造自己的
·国内数据恢复市场内幕揭秘
专题教程
·PHP教程专题
·MySQL 专题
·数据恢复指南 专题
·Web服务器专题
·DB2 9数据库专题
·ghost教程 专题
·局域网技术专题
·虚拟机专题
·CDN加速技术专题
·注册表教程专题
最新文章
·Access数据库在asp.net程序
·用C#访问ACCESS数据库问题
·C#中使用net share命令时要
·SQL Server 与Oracle的不同
·网页刷新方法
·Object/DataSet Relationa
·MySQL数据库中的安全解决方
·Linux操作系统的声音设备编
·Linux内核驱动程序初始化顺
·学软件破解需要知道的6个最
·保持网站流量 对网站改版方
·Photoshop文字特效:逼真立
·web标准常见问题大集合
·由MP3黑掉自动取款机引发的
·成功网管必备之硬件篇
设为首页 - 加入收藏 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003 - 2006 XKER Inc. All Rights Reserved
新客网 版权所有