2014-04-09 260 views
0

我正在使用Asp.net MVC4。我有一些实体和一些规则,我需要从控制器验证每个实体,并显示相应的错误消息。我试图设计一个通用的验证类,它可以用于我正在使用的所有实体。如果我调用 验证,它应该返回验证成功或验证错误列表。我将通过实体及其类型MVC4中的自定义模型验证

一些样品实体和规则

Employee - Employee should have either middle name or last name 
      - First name, Middle name, last name should not be same 
      - Should have address id and it should present in address table 
      ...... 
      ...... 

    Address - In address line if there is an opening bracket it should have a matching closing bracket 
      - If user give map url and it doesnt contains "http://" should show error message 
      ....... 
      ....... 

我与错误类型ID的资源文件中有所有的错误消息

请上咨询我接受我应该遵循?或者分享我的一些网络教程链接,这将帮助我设计这个

+1

我会建议你还是在这里有一个观点: http://fluentvalidation.codeplex.com/ HTTP ://stackoverflow.com/a/16100455/3383479 –

回答

1

您是否看过远程验证?这可能是您尝试实现的好例子,因为您有一些复杂的规则。

一些示例代码:

public class ValidationController : Controller 
{ 

    public JsonResult IsAddressValid(string Address) 
    { 

    //if Address is valid 
    return Json(true, JsonRequestBehavior.AllowGet); 

    //else 

    return Json("Address Not valid", JsonRequestBehavior.AllowGet); 

    } 
} 

然后在你的模型

public class SignupModel 
{ 
    [Required] 
    [Remote("IsAddressValid", "Validation")] 
    public string Address{ get; set; } 
}