У меня есть следующие маршруты:Действие Ссылка на "потерять" параметр
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(null,"Conference/{shortName}/Submission/{submission}/{action}", new { controller = "Conference", action = "Show" });
routes.MapRoute(null,"Conference/{shortName}/{action}",new { controller = "Conference", action = "Index" });
routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
следующие (надеюсь, очевидно) ссылки, которые все работают:
- /Конференция/testconf
- /Conference/testconf/ShowSubmissions
- /Conference/testconf/Представление/firstSub
- /Conference/testconf/Представление/firstSub/EditSubm ission
Когда я сейчас в Submission/firstSub и создать ActionLink как этот
@Html.ActionLink("Show Submissions", "ShowSubmissions", "Conference", new { shortName = Model.confereceShortName },null)
создает следующую ссылку
- /Конференция/testconf/Представление/firstSub/ShowSubmissions
Как я могу позволить actionlink забыть о Submission/firstSub без жесткого кодирования повторно?
Мои два маршруты между игнорировать и маршрут по умолчанию вы вывесили, следовало бы упомянуть, что. Я хочу, чтобы контроллер конференции обрабатывал два запроса. Также ссылка должна выглядеть как/Conference/confID/Submission/subID или/Conference/confID. Ссылки работают, я хочу только «вернуть» кнопку из/conf/confid/sub/subid в/conf/confid – Vulcano
Как уже упоминалось, попробуйте повторить ваши маршруты, которые могут определенно помочь. Также посмотрите на пользовательские ссылки маршрута на мой ответ, который поможет. –
при переупорядочивании моего действияLink генерирует следующую ссылку/конференцию/testconf/Show? Submission = firstSub (сначала первое совпадение).Что касается ваших ссылок, я уже создаю свой собственный маршрут, основная проблема, с которой я сейчас сталкиваюсь, - это выйти из подпрограммы в mainroute. Я также редактировал свое другое сопоставление маршрутов в моем вопросе. – Vulcano