在我的 mvc4 应用程序中,我想使用 html.beginform() 将多个参数传递给同一控制器上的 actionResult。
我这样做:
看法:
<div>
@using (Html.BeginForm("AddNote", "Lead",FormMethod.Post, null))
{
@Html.Hidden("leadID",@Model.ID)
<input type="text" name="noteBody" />
<input type="submit" class="mainButton" value="Add New!"/>
}
</div>
控制器(LeadController):
[HttpPost]
ActionResult AddNote(int leadID, string noteBody)
{
Note note = new Note();
note.DateModified = DateTime.Now;
note.Title = "No Title";
note.Body = noteBody;
Lead lead = unitOfWork.LeadRepository.GetById(leadID);
lead.Notes.Add(note);
unitOfWork.Save();
return RedirectToAction("Details", new { id = leadID });
}
当我按下提交按钮时,我得到一个例外:
无法找到该资源。
说明:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。
请求的 URL:/Lead/AddNote
这就是说我已经用输入参数尝试过它的地方,它工作得很好。我还尝试在表单声明中传递“leadID”参数(新的 {leadID = @Model.ID})。
知道我在做什么错吗?