所以我是MVC3的新手,并使用DataAnnotations进行验证。 一切都在很好的客户端,但我如何让服务器端版本工作? 如果我禁用Javascript,则无法看到验证。
我的模型看起来像这样
[Required(ErrorMessageResourceName = "Verplicht", ErrorMessageResourceType = typeof (ValidatieStrings))]
[Display(Name="Voorletters", ResourceType = typeof (VeldNaamStrings))]
public string Voorletters { get; set; }
我的控制器看起来像这样
using System.Web.Mvc;
using inschrijven_werknemer.Models;
namespace inschrijven_werknemer.Controllers
{
public class HomeController : LocalizationController
{
public ActionResult Index()
{
return View(new MedewerkInfoModel());
}
}
}
我的视图看起来像这样
@model inschrijven_werknemer.Models.MedewerkInfoModel
<div class="stap-div" id="stap2">
@Html.EditorForModel("MedewerkInfoModel")
</div>
我做错了什么?
答案 0 :(得分:5)
您可以使用Model.IsValid
属性执行此类操作。
所以你可以试试这个:
[HttpPost]
public ActionResult Index()
{
if (ModelState.IsValid)
{
return View(new MedewerkInfoModel());
}
return View();
}
此处提供了更详细的阅读:https://stackoverflow.com/a/5969156/1182982和https://stackoverflow.com/a/4760494/1182982