ASP MVC使用超链接控制

时间:2011-04-05 12:09:57

标签: asp.net asp.net-mvc hyperlink

我有以下超链接控件:

<asp:HyperLink ID="hypTest" runat="server" NavigateUrl="~/Views/TestFolder/TestPage.aspx" >
    Text here
</asp:HyperLink>

但它找不到页面 - 尽管页面确实存在。我得到的错误是:

Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly.

Requested URL: /Views/TestFolder/TestPage.aspx

我的猜测是,波浪号(〜)在这里不起作用。如果是这种情况那么为什么,我该如何解决它呢?

1 个答案:

答案 0 :(得分:7)

如果您使用的是MVC,则应使用HtmlHelper.ActionLink辅助函数。您目前正在使用webforms超链接控件。假设您有默认路由,您应该可以使用

<%=Html.ActionLink("Text here", "TestPage", "TestFolder")%>

您当前收到404错误,因为~/View文件夹中的页面默认被阻止。您通常会在~/TestFolder/TestPage

处请求该页面