ASP.NET获取页面的绝对路径

VirtualPathUtility.ToAbsolute("~/")
HttpRuntime.AppDomainAppVirtualPath
Request.ApplicationPath
Page.ResolveUrl("~")
得到网站的绝对路径有以上几种方法,但是以网站运行和以虚拟目录运行,两者的结果并不相同
当以网站的方式访问时,结果如下:
VirtualPathUtility.ToAbsolute("~/")    = /
HttpRuntime.AppDomainAppVirtualPath    = /
Request.ApplicationPath    = /
Page.ResolveUrl("~")    = /
当以虚拟目录(http://localhost/web2/url.aspx)访问时,结果如下:
VirtualPathUtility.ToAbsolute("~/")    = /web2/
HttpRuntime.AppDomainAppVirtualPath    = /web2
Request.ApplicationPath    = /web2

Page.ResolveUrl("~")    = /web2/

 

所以需要注意,如果在全局配置文件中使用,就必须使用前两种方法

知识共享许可协议
《ASP.NET获取页面的绝对路径》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     177.07ms