一、Form Validation
vici mvc包括 HTML 窗体的一种非常强大和灵活的验证机制。在上一节中所示,我们知道可以通过三种不同的机制来验证窗体。您可以任意组合所有这些机制来验证一个单个窗体。
可以按如下方法验证:
1、验证字段的属性
2、特定字段的字段验证方法
3、全局验证方法
二、 Validation using attributes
在每一个WebForm的继承类里,你可以定义一些特殊的验证属性,如下:
- [ValidateRequired]
- [ValidateLength(minLength)]
- [ValidateLength(minLength,maxLength)]
- [ValidateRegex(regex)]
- [ValidateRange(min,max)]
- [ValidateExpression(expr)]
大多数的这些验证属性不需要进一步解释,除了为ValidateExpression 属性,见下面的解释:
对于验证属性最重要的一点就是当某个字段的值为空的时候验证成功,例如,当用户什么也不填写时您指定的属性 [ValidateLength3]将会验证成功,如果有一个字符填进去就将失败。 要防止出现这种情况,应增加 [ValidateRequired] 属性。
1)The ValidateExpression attribute
ValidateExpression 属性是 基于自定义验证表达式的 一个非常强大的验证器,它允许您指定表达式的计算结果为 真或者假的实际意义验证成功。 它允许您指定一个表达式,而它的计算结果可以为真或者假。这个表达式可以接受任何c#表达式返回的bool值,同时支持 strings, numbers, booleans等。此外,您可以引用其他窗体的字段,只需通过在表达式中使用字段名称。特殊