日期:2014-05-17  浏览次数:20810 次

请问,获取文件的相对路劲
我使用Access数据库,Access文件放在程序所在的目录
string str = "provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + Server.MapPath("学生档案.mdb") + "";



不是说的使用Server.MapPath获取相对路劲吗?但是在程序中报错:当前上下文不存在Server
该怎么处理呢?

------解决方案--------------------
报什么错,这个是web asp.net开发才有的,winform 没有
------解决方案--------------------
web程序采用这个,winform可以使用Application.ExecutablePath等
------解决方案--------------------
winform:
 Application.StartupPath + "\\学生档案.mdb";

webform:
System.Web.HttpContext.Current.Server.MapPath("学生档案.mdb");
------解决方案--------------------
Server命名空间System.Web.HttpContext下
如果是Winfrom,可以通过得到程序的运行路径Application.StartupPath 然后找到库所在的具体路径,拼接

------解决方案--------------------
Environment.CurrentDirectory + "\\学生档案.mdb"
------解决方案--------------------
WinForm里直接用
string str = "provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=|DataDirectory|学生档案.mdb";

|DataDirectory|代表exe的启动目录,你把access文件放在exe一起就行了。
------解决方案--------------------
Application.StartupPath

相关资料更多>