comparison Source/Validation/MinLengthAttribute.cs @ 0:f990fcb411a9

Копия текущей версии из github
author cin
date Thu, 27 Mar 2014 21:46:09 +0400
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:f990fcb411a9
1 using System;
2
3 namespace BLToolkit.Validation
4 {
5 [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)]
6 public class MinLengthAttribute : ValidatorBaseAttribute
7 {
8 public MinLengthAttribute(int minLength)
9 {
10 _value = minLength;
11 }
12
13 public MinLengthAttribute(int minLength, string errorMessage)
14 : this(minLength)
15 {
16 ErrorMessage = errorMessage;
17 }
18
19 private readonly int _value;
20 public int Value
21 {
22 get { return _value; }
23 }
24
25 public override bool IsValid(ValidationContext context)
26 {
27 return context.IsNull(context) || context.Value.ToString().Length >= _value;
28 }
29
30 public override string ErrorMessage
31 {
32 get { return base.ErrorMessage ?? "'{0}' minimum length is {1}."; }
33 set { base.ErrorMessage = value; }
34 }
35
36 public override string GetErrorMessage(ValidationContext context)
37 {
38 return string.Format(ErrorMessage, GetPropertyFriendlyName(context), Value);
39 }
40 }
41 }