Mercurial > pub > bltoolkit
view Source/Validation/MaxLengthAttribute.cs @ 9:1e85f66cf767 default tip
update bltoolkit
author | nickolay |
---|---|
date | Thu, 05 Apr 2018 20:53:26 +0300 |
parents | f990fcb411a9 |
children |
line wrap: on
line source
using System; namespace BLToolkit.Validation { [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)] public class MaxLengthAttribute : ValidatorBaseAttribute { public MaxLengthAttribute(int maxLength) { _value = maxLength; } public MaxLengthAttribute(int maxLength, string errorMessage) : this(maxLength) { ErrorMessage = errorMessage; } private readonly int _value; public int Value { get { return _value; } } public override bool IsValid(ValidationContext context) { return context.IsNull(context) || context.Value.ToString().Length <= _value; } public override string ErrorMessage { get { return base.ErrorMessage ?? "'{0}' maximum length is {1}."; } set { base.ErrorMessage = value; } } public override string GetErrorMessage(ValidationContext context) { return string.Format(ErrorMessage, GetPropertyFriendlyName(context), Value); } } }