当前位置:  开发笔记 > 编程语言 > 正文

Asp.Net URL的绝对路径

如何解决《Asp.NetURL的绝对路径》经验,为你挑选了1个好方法。

为了使webapp与其他服务器上的另一个应用程序共享文件更简单,我在我的母版页中使用了基本的href标记.正如许多人发现的那样,这会破坏webform路径.我有一个工作的Form Adapter类,但我不知道如何获取url的绝对路径.目前,我的程序硬编码使用类似于:

HttpContext Context = HttpContext.Current;
value = "http://localhost" + Context.Request.RawUrl;

值得注意的是,我目前正在我的本地IIS服务器上进行测试,所以我尝试使用的很多东西都有一种奇怪的趋势,以便绝对路径不包含域名(我的本地IIS不可见)外部).这意味着它不是绝对路径,因此基础href将破坏它.

是否有一种很好的方法来处理它,以便它可以在没有硬编码的情况下在本地工作,但在上传到服务器时也能正常工作?我宁愿避免任何涉及在服务器端副本上做一些不同的事情.

是的,我意识到我可以在本地和服务器上使用单独的web.config文件来获取此信息,但这很难看并且违反了DRY.



1> John Rasch..:

我以前用过这个:

// Gets the base url in the following format: 
// "http(s)://domain(:port)/AppPath"
HttpContext.Current.Request.Url.Scheme 
    + "://"
    + HttpContext.Current.Request.Url.Authority 
    + HttpContext.Current.Request.ApplicationPath;

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有