在我的视图“EditUser”中,我有一个动作链接,我并不总是点击:
<%= Html.ActionLink("Resend forgotten password", "EditUser", this.Model.UserName, null)%><br />
在我的控制器“AdministrationController”中,我有一个EditUser ActionResult,我想调用发送忘记密码的方法。但是,如果我点击一个动作链接,我不知道如何反应。每当我调用Action“EditUser”时,我都不想发送密码。
我在AdministratorController中的行动:
[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);
}
答案 0 :(得分:2)
您可以创建额外的操作方法并更改操作链接:
&lt;%= Html.ActionLink(“重新发送忘记密码”,“重新发送密码”,此.Model.UserName,null)%&gt;
重新发送密码的操作方法如下所示:
[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.
}
}