ASP.NET Url 路由基础知识
ASP.NET Url Routing Basics
我正在熟悉 Url 路由并且很快就卡住了。我正在尝试调整根文件夹中一个文件的 url,而不是“http://localhost:55805/Maps.aspx" it shows just "http://localhost:55805/maps”。简单的东西,没有参数等。我创建了 Global.asax 文件并添加了以下代码。
protected void Application_Start(object sender, EventArgs e)
{
routes.MapPageRoute("maproute", "maps", "~/Maps.aspx");
}
Link我打电话是这样的
<div id="Div6" class="menuitem"><h3><a class="fill-div" href="../Maps.aspx")">Maps</a></h3></div>
有谁知道我应该如何调整代码。我尝试了各种 <% GetRouteUrl... %> 命令,但没有任何帮助。是不是服务器控制导致的?尝试改用超链接,但没有帮助。我正在使用 .NET 4.5 版。
非常感谢
您试过只使用 <a class="fill-div" href="/maps">
吗?
有几种方法:
1.- 使用 RouteUrl 表达式和超链接
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="<%$RouteUrl:routename=maproute%>">
Maps
</asp:HyperLink>
2.- 使用虚拟 url 和超链接
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="~/maps">
Maps
</asp:HyperLink>
3.- 使用 runat 服务器锚点和 RouteUrl 表达式
<a class="fill-div" href="<%$RouteUrl:routename=maproute%>" runat="server">Maps</a>
4.- 使用 runat 服务器锚点和虚拟 url
<a class="fill-div" href="~/maps" runat="server">Maps</a>
我正在熟悉 Url 路由并且很快就卡住了。我正在尝试调整根文件夹中一个文件的 url,而不是“http://localhost:55805/Maps.aspx" it shows just "http://localhost:55805/maps”。简单的东西,没有参数等。我创建了 Global.asax 文件并添加了以下代码。
protected void Application_Start(object sender, EventArgs e)
{
routes.MapPageRoute("maproute", "maps", "~/Maps.aspx");
}
Link我打电话是这样的
<div id="Div6" class="menuitem"><h3><a class="fill-div" href="../Maps.aspx")">Maps</a></h3></div>
有谁知道我应该如何调整代码。我尝试了各种 <% GetRouteUrl... %> 命令,但没有任何帮助。是不是服务器控制导致的?尝试改用超链接,但没有帮助。我正在使用 .NET 4.5 版。
非常感谢
您试过只使用 <a class="fill-div" href="/maps">
吗?
有几种方法:
1.- 使用 RouteUrl 表达式和超链接
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="<%$RouteUrl:routename=maproute%>">
Maps
</asp:HyperLink>
2.- 使用虚拟 url 和超链接
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="~/maps">
Maps
</asp:HyperLink>
3.- 使用 runat 服务器锚点和 RouteUrl 表达式
<a class="fill-div" href="<%$RouteUrl:routename=maproute%>" runat="server">Maps</a>
4.- 使用 runat 服务器锚点和虚拟 url
<a class="fill-div" href="~/maps" runat="server">Maps</a>