在现有代码中,我已经在我的视图中看到了这个:
<p class="label">@Html.ActionLink("Update Your Email", "UpdateEmail", "Settings")<br/>
我在那里添加了一个简单的文本框,以便他们输入密码。请注意,我不要想要提交按钮或其他任何内容,只需要一个文本框来输入密码。
<input type="password" name="userpassword"/>
在controller
中ActionLink
中的操作,我目前来自旧代码,我有这个:
public ActionResult UpdateEmail()
{
// I just want to have the password they typed in here to use it.
// some pre-existing stuff
}
我该怎么做?当我来UpdateEmail()
时,我想知道他们在textbox
中输入了什么内容?对不起,我是菜鸟和愚蠢的问题。
答案 0 :(得分:1)
您无法确定他们在框中输入的内容,直到将信息发布到某种操作。您已经定义了一个Action方法:
public ActionResult UpdateEmail() {}
您需要定义另一种方法:
[HttpPost]
public ActionResult UpdateEmail([FromBody] ViewModelType viewModel) {}
其中ViewModelType
被定义为具有公共userpassword
字段的公共属性。您还应该考虑在现有的[HttpGet]
方法中添加UpdateEmail()
注释。