asp.net - 2008-7-16 15:29:00
在ASP.NET 页面中获得当前路径的方法很多,比如 MapPath 和 Request 对象。
但是在 app_Code 文件夹下的类文件. 想要获得当前的目录,会发现上面的 MapPath 和 Request 都无法使用.
解决的方法主要是依靠 HttpContext 对象,比如
HttpContext.Current.Request.PhysicalPath; // 获得当前页面的完整物理路径.比如 F:\XFU.NSQS\project\website\Default.aspx
HttpContext.Current.Request.PhysicalApplicationPath; // 获得当前程序运行的物理路径比如F:\XFU.NSQS\project\website\
HttpContext.Current.Server.MapPath(@"\"); 这个就是在页面中的MapPath了.一样用法
HttpRuntime.AppDomainAppPath //这个是新发现的,很好用.
还有一个是用来处理在asp.net中调用dll文件,而DLL文件如果想知道当前的web站点的工作目录可以用
System.AppDomain.CurrentDomain.BaseDirectory
suresy - 2008-7-16 21:05:00
我来补充一个获得当前页面的引用,这在类中可以方便地使用RegisterStartupScript输出脚本:
Page currentPage = HttpContext.Current.Handler as Page;
if(currentPage != null)
{
// 注册脚本。。。
}
asp.net - 2008-7-17 6:52:00
2楼的不错,我也学习了。