Я пытался выяснить, как использовать функции маршрутизации с ASP.net 4.0 WebForms.
Я добавил маршрут в свою коллекцию маршрутов:
void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute(
"about-route",
"about/",
"~/About.aspx"
);
}
На своей главной странице я попытался сделать следующее:
<asp:HyperLink ID="asdf" runat="server" NavigateUrl='<%= GetRouteUrl("about-route", new {}) %>'>Test</asdf>
Я получил ошибку компилятора: серверные теги не могут содержать конструкции <% ...%>.
Как правильно создать URL-адрес маршрута в серверном элементе управления в веб-формах? Мне также нужно включить его в следующее:
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
<Items>
<asp:MenuItem NavigateUrl="ROUTE HERE" Text="Home"/>
<asp:MenuItem NavigateUrl="ROUTE HERE" Text="About"/>
</Items>
</asp:Menu>