[英]Validation without using Data Annotation in mvc 4 razor engine
我想在不使用数据注释的情况下执行验证,因为我在n层MVC 4剃刀架构中使用了EF。 而且数据注释不适用于EF控件。大家都可以在这里看到我的代码:
[HttpPost]
public ActionResult RegisterNewUser(CreateUser obj)
{
if (ModelState.IsValid)
{
//
}
}
和ModalState.Isvalid
不起作用。 我该如何解决?
我认为您正在寻找的是DataAnnotation验证无法为您提供所需灵活性的情况。
例如,我需要一个可以通过下拉列表选择或输入的地址。 如果输入的地址行之一存在,则所有这些都必须存在。 仅使用DataAnnotations很难检查。
我过去所做的工作是在控件返回到控制器之后但在检查ModelState.IsValid之前进行验证。
这允许在控制器中进行自定义/复杂的验证
您可以使用
ModelState.AddModelError("PostalCode", "The postal code is missing.");
修改ModelState(使其无效),然后在检查ModelState.IsValid之后可以将控件返回到视图
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.