Как создать ссылки действий на основе текущих значений маршрута? - PullRequest
1 голос
/ 22 ноября 2011

У меня есть страница с URL http://localhost:5947/Employer/Edit?LoginID=41, и с этой страницы у меня есть ссылка, созданная @Html.ActionLink("Change password", "change_pass", "Employer");, которая перенаправляет на страницу смены пароля.

Как передать LoginID со страницы редактирования на страницу смены пароля?

Ответы [ 2 ]

2 голосов
/ 22 ноября 2011
@Html.ActionLink(
    "Change password", 
    "change_pass", 
    "Employer", 
    new { LoginID = Request["LoginId"] }, 
    null
)

Это, как говорится, передача идентификатора входа в качестве параметра строки запроса вызывает серьезные опасения по поводу безопасности вашего приложения.

1 голос
/ 22 ноября 2011

Вам необходимо использовать перегрузку ActionLink, которая позволяет вам устанавливать значения маршрута.Например, вы можете сделать:

@Html.ActionLink(
    "Change password", 
    "change_pass", 
    "Employer", 
    new { LoginID = Request["LoginID"] }, 
    null)

Однако вы можете улучшить это, не обращаясь к Request["LoginID"] напрямую.Для этого модель для представления Edit должна иметь свойство для текущего LoginID и использовать это свойство вместо этого.

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