Mercurial > pub > bltoolkit
view Source/Validation/MaxLengthAttribute.cs @ 1:8f65451dc28f
Исправлена проблема с фабрикой и выборкой нескольких объектов в linq выражении
author | cin |
---|---|
date | Fri, 28 Mar 2014 01:04:56 +0400 |
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); } } }