我是asp.net MVC 4的新手。我在处理attributs方面遇到了一些问题
我在我的控制器中使用[httppost]
attribut,但它无法正常工作
它甚至没有被调用
我的控制器
public ActionResult Inscription()
{
return View();
}
[HttpPost]
public ActionResult Inscription(Candidat candidat)
{
if (!ModelState.IsValid)
{
return View(candidat);
}
return RedirectToAction("Index");
}
我的观点
@model ProcRec.Models.Candidat
@{
ViewBag.Title = "Inscription";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@Html.ValidationSummary(true)
<div class="form_settings">
@using (Html.BeginForm("Inscription", "CandidatController"))
{
<table ="#FFFFFF">
<tr>
<td>@*<span >Nom :</span>*@ @Html.LabelFor(model => model.nom_candidat)</td>
<td> @Html.TextBoxFor(model => model.nom_candidat)
@Html.ValidationMessageFor(Model => Model.nom_candidat)
.
.
</table>
}
<input type="submit" class="submit right" value="Inscription" />
认为你的帮助
答案 0 :(得分:4)
只需将beginform更正为:
@using (Html.BeginForm("Inscription", "CandidatController",FormMethod.Post))
{
........
<input type="submit" class="submit right" value="Inscription" />
}
将提交按钮放在BeginForm()中,并将BeginForm()FormMethod作为Post。
Thankzz ..
答案 1 :(得分:3)
将<submit>
元素放在表单中:
@using (Html.BeginForm())
{
...
<input type="submit" class="submit right" value="Inscription" />
}
答案 2 :(得分:2)
无需更改Html.BeginForm
。默认情况下它是POST。
只有问题在于提交按钮,它应该是Andy Refuerzo's answer中提到的内部格式。不知道为什么会被低估。