Как генерировать URL-адреса на стороне клиента с помощью ASP.NET MVC? - PullRequest
3 голосов
/ 20 августа 2009

Одной из замечательных особенностей ASP.NET MVC является механизм маршрутизации. Я люблю генерировать свои URL-адреса и ничего не ломаю, когда меняю маршруты.

Однако я не уверен, как применить этот механизм на стороне клиента.

Давайте представим общий сценарий, в котором у меня есть два раскрывающихся списка, и содержимое второго списка зависит от выбранного элемента в первом списке. Я хочу загружать элементы второго списка асинхронно, когда изменяется выбор в первом списке.

URL, использующий маршрут по умолчанию, может выглядеть следующим образом: / Cars / GetModelsForBrand / Honda

Достаточно просто ...

var url = '/Cars/GetModelsForBrand/' + $("#brands").val();

Что если я поменяю маршрут и URL-адрес станет: / Honda / GetModels

Я просто сломал свой код неочевидным способом.

Есть ли способ генерировать URL-адреса со стороны клиента?

1 Ответ

2 голосов
/ 20 августа 2009

У нас был похожий сценарий, и мы решили его, сгенерировав ссылку на действие, а затем добавив к нему наши параметры позже. У нас также был случай, когда мы не были уверены в действии и хотели установить его во время клиента. В этом случае мы сгенерировали ссылку на Index и сделали замену на стороне клиента.

Под генерацией ссылки я имею в виду использование вспомогательного метода Html.ActionLink

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...