#asp.net-mvc
#asp.net-mvc
Вопрос:
Любопытно, почему объявление MapPageRoute перед маршрутом MVC по умолчанию вызывает проблемы с UrlHelper.GenerateUrl.
Я начал с этого в моем Global.asax.cs:
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapRoute( "MyApp", "home/my-app", new { controller = "Home", action = "MyApp" } );
routes.MapPageRoute( "MyOldWebForm", "oldform.aspx", "~/WebForms/OldForm.aspx" );
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Site", action = "Index", id = UrlParameter.Optional } );
}
Любая ссылка в представлении на объявление по умолчанию, подобное @Html.BeginForm()
, или результат вызова контроллера, подобный RedirectToAction("Index", "Errors", new {fault = "itemMissing"} );
, выдаст URL «oldform.aspx».
Когда я меняю порядок маршрута MVC по умолчанию на маршрут страницы, он работает так, как ожидалось.
Ответ №1:
Это для asp.net маршрутизация веб-форм. вы можете видеть
http://msdn.microsoft.com/en-us/library/system.web.routing.routecollection.mappageroute.aspx
Комментарии:
1. Верно, приложение представляет собой смесь MVC и некоторых старых веб-форм.