如何在Web应用程序中创建一个即使它不在wwwroot中也能工作的链接?

时间:2012-06-13 21:38:17

标签: asp.net html

我有一个在Visual Web开发人员中运行良好的Web应用程序。但是当我将它发布到IIS时,链接如下:href="/Default.aspx"不起作用。页面的地址现在是:http://localhost/ MyApp.net/Default.aspx

所以我尝试添加代字号:href="~/Default.aspx",但浏览器正在寻找:http://localhost/ MyApp.net/~/Default.aspx

这很重要,因为我实际上想要发布到文件夹而不是wwwroot,但不想对路径进行硬编码。

2 个答案:

答案 0 :(得分:3)

您需要包含runat =" server"从根目录解决它。

<a href="~/Default.aspx" id="myLink" runat="server">Link</a>

答案 1 :(得分:1)

使用ResolveURL()输出您的链接引用。无论您的应用位置如何,.Net都会为您处理所有管道。

<a href="<%= ResolveURL("~/Default.aspx")%>" id="theLink">Link</a>

更多阅读:Control.ResolveUrl Method