我不太确定您要实现什么,但是如果您想处理表单中的多个按钮,那么在视图中您需要为每个按钮命名。例如:
@using (Html.BeginForm())
{
...
<input type="submit" value="Get Records" name="getrecords"/>
<input type="submit" value="Save" name="save"/>
<input type="submit" value="Delete" name="delete"/>
}
然后您可以使用以下命令在 post 操作中测试这些值:
[HttpPost]
public ActionResult AppropriateActionNameHere(ContentsViewModel vmodel)
{
if (!string.IsNullOrEmpty(Request["getrecords"]))
{
vmodel.GetRecords();
}
else if(!string.IsNullOrEmpty(Request["save"]))
{
//save record processing here
}
else if(!string.IsNullOrEmpty(Request["delete"]))
{
//delete record processing here
}
return View(vmodel); //Or perform the appropriate redirect or whatever you need to perform
}
另一种可能性是在视图上有多个表单,每个表单回发到不同的操作。