我有一个这样的文件夹结构:
www.mysite.com/About/About.aspx
我在这样的用户控件中有一个链接:
<a href="~/About/About" id="aboutLink" title="About" runat="server">About</a>
在我的 RegisterRoutes() 方法中,我有这个:
routes.MapPageRoute("", "About/About/", "~/About/About.aspx");
它可以工作,但会产生以下 URL:
www.mysite.com/About/About
我想要的是这样的:
www.mysite.com/About
开箱即用的 4.0 路由可以做到这一点吗?
更新 2 - 05-14-2010:
显然,我通过将 .aspx Web 表单命名为与包含文件夹相同的名称,引入了一个额外的问题。最后,这对我有用:
RouteTable.Routes.MapPageRoute("", "About/", "~/AboutUs/About.aspx");
<asp:HyperLink ID="aboutLink" NavigateUrl="~/About"
Text="About" runat="server"></asp:HyperLink>
Raj 提供的链接帮助我找到了答案 :-)
http://msdn.microsoft.com/en-us/library/cc668201.aspx