Реагируйте в контроллере, который и если ссылка на действие нажат в поле зрения

StackOverflow https://stackoverflow.com/questions/3624865

Вопрос

На мой взгляд «Редикат» у меня есть ссылка на действия, которую я нажимаю не всегда:

  <%= Html.ActionLink("Resend forgotten password", "EditUser", this.Model.UserName, null)%><br />

В моем контроллере «АдминистрированиеController» у меня есть редикатор ActionResult там, я хотел бы назвать методом, который отправит забытый пароль. Но я не знаю, как реагировать, если я нажал на действие действия или нет. Я не хочу отправлять пароль каждый раз, когда я называю действие «Редикат».

Мои действия в администратореcontroller:

[HttpPost]
        [ValidateInput(false)]
        public ActionResult EditUser(EditUserModel model)
        {
        try
        {
            Admin admin = new Admin();
            admin.SendForgottenPasswordToUser(model.UserName);

            if (!model.Validate())
            {
                ModelState.AddModelError("", "Please fill missed fields");
            }

            if (!model.Save())
            {
                ModelState.AddModelError("", "Error while saving data");
            }
            else
            {
                ModelState.AddModelError("", "Successufully edited.");
            }

            return View(model);

        }
Это было полезно?

Решение

Вы можете создать дополнительный метод действий и изменить ссылку действий:

<% = Html.actionLink («повторно забыл пароль», «ResendPassword», this.model.username, null)%>

Метод действий для отправки пароля затем выглядит что-то подобное:

[HttpPost]
[ValidateInput(false)]
public ActionResult ResendPassword(EditUserModel model)
{
    try
    {
        Admin admin = new Admin();
        admin.SendForgottenPasswordToUser(model.UserName);
        return View("EditUser", model);
    }
    catch (Exception ex)
    {
        // Error handling here.
    }
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top