我可以使用MVC 2 DataAnnotations指定字符串字段的最小长度吗?ASP.NET MVC 2 DataAnnotations StringLength
有没有人做过这个或让他们创建自定义属性,如果是的话,你介意分享源代码吗?
我可以使用MVC 2 DataAnnotations指定字符串字段的最小长度吗?ASP.NET MVC 2 DataAnnotations StringLength
有没有人做过这个或让他们创建自定义属性,如果是的话,你介意分享源代码吗?
如果您使用的是asp.net 4.0,则可以使用StringLength属性指定最小长度。
如:
[StringLength(50, MinimumLength=1)]
public string MyText { get; set; }
使用正则表达式的属性。这些也在客户端进行解释。
[RegularExpression(Regexes.MinStringLength)]
public string MyText { get; set; }
其中Regexes.MinStringLength
是一个静态正则表达式类。内联看起来是这样的:
[RegularExpression(@"^.{5,10}$")] // valid five to ten characters
public string MyText { get; set; }
Regexes.MinStringLength似乎是在家里种植的,也许你可以放入一个不需要其他定义的例子。也许[RegularExpression(“。{1}”)],将最小长度改为1。 – 2012-02-23 16:37:07
对不起,应该阅读[RegularExpression(“。{1,}”)] - ref http://msdn.microsoft.com/en-us/library/az24scfc.aspx – 2012-02-23 16:52:48
当然 - 请参阅更新。 – 2012-02-23 18:50:20
不,我们现在还没有使用4.0,事情发生的方式也不会持续很长时间。 :) – griegs 2010-03-22 23:07:30
仅供参考。如果您“under-post”(意思是您没有发布名为“MyText”的表单字段),则该属性的StringLength验证将被忽略。 [这是一篇文章](http://bradwilson.typepad.com/blog/2010/01/input-validation-vs-model-validation-in-aspnet-mvc.html)使用相似的属性(RequiredAttribute)解释这种情况。 – tbehunin 2012-03-12 21:00:58