Настройка поиска по URL-параметрам в asp.net mvc - PullRequest
0 голосов
/ 04 февраля 2010

У меня есть маршрут, добавленный с помощью кода

routes.MapRoute("MyRoute", "TheUrl", new { controller = "MyController", action = "MyAction" });

Затем я могу выполнить обратный поиск с аргументами вроде UrlHelper.Action("MyAction", "MyController"), и он вернет хороший URL-адрес, например ~/TheUrl

Тем не менее, для этого маршрута я хочу, чтобы сгенерированный URL был ~/TheUrl?p=2354, с параметром, являющимся некоторым параметром контроля версий.Есть ли способ сделать это путем сопоставления маршрута с помощью какого-либо настроенного обработчика маршрута или чего-то еще?Параметр управления версиями будет нестандартным и потребует выполнения некоторого пользовательского кода при каждом поиске URL-адреса.

1 Ответ

0 голосов
/ 04 февраля 2010

Я думаю, что метод расширения UrlHelper был бы наиболее идеальным и простым здесь, особенно.

public string MyRoute(this UrlHelper url)
{
     string versionNumber = GetVersionNumber();  // or w/e is required to get it
     return Url.Action("MyAction", "MyController") + "?p=" + versionNumber;
}   

Это сделает вызов этого маршрута намного проще в html

<%= Url.MyRoute() %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...