Files
ShrlAlgoToolkit/ShrlAlgoToolkit.Mvvm/Attributes/MaximumAttribute.cs
2025-04-24 20:56:44 +08:00

20 lines
613 B
C#

using System.ComponentModel.DataAnnotations;
namespace ShrlAlgoToolkit.Mvvm.Attributes;
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)]
public sealed class MaximumAttribute : ValidationAttribute
{
public MaximumAttribute(double maxValue = 0)
{
MaxValue = maxValue;
}
public double MaxValue { get; }
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
return double.TryParse(value.ToString(), out var d) && d <= MaxValue ? ValidationResult.Success : new ValidationResult("输入值超出范围");
}
}