在IIS 8.5中,我有一个默认网站,我有多个应用程序。其中一些应用程序实际上是为不同用户组部署的相同网站代码,每个用户组都指向具有不同配置的不同数据库,等等。
是否可以在我的网站中创建链接到APPLICATION的根目录而不是网站的超链接?如果我使用<a href="/" >Go Home</a>
之类的内容,那么点击该链接就不会导航到http://myserver/myapplication,而是会链接到http://myserver。
显然我可以对链接进行硬编码,但这意味着必须编辑网站每个部署的代码。我可以通过将根URL存储在配置文件中来解决这个问题,也许这是实现我正在寻找的唯一方法,但它似乎过于复杂了!
此外,当我在我的开发机器上的调试中运行网站时,URL类似于http://localhost:12345(即没有应用程序名称),所以即使我确实将根URL存储在某处,它也是没有额外的工作就不会在开发中发挥作用。
我知道我可以使用像<a href="../">Go Home</a>
之类的相对路径向上导航一定数量的级别,但我正在尝试在自定义错误页面上使用此链接,所以理想情况下我希望它能够工作即使用户以某种方式导航到http://myserver/myapplication/foo/bar/foo/bar/foo/bar之类的东西,在这种情况下我的链接需要向上导航六个级别。关键是,我不知道包含链接的页面下面有多少级别。
我天真地认为<a href="/"...
有一条捷径可以到达应用程序根目录,但似乎我错了!
答案 0 :(得分:1)
在asp.net-mvc的第4版之前,您将使用以下代码:
<a href="Url.Content("~/") ">Root</a>
对于版本4及更高版本,razor-2会自动查找代字号,以便您可以:
<a href="~/">Root</a>