是否可以创建一个属性来限制数字的最小或最大值。
示例:
[MinValue(1), MaxValue(50)]
public int Size { get; set; }
当我执行Size = -3;
时,Size
的值必须为1。
我在谷歌上搜索了一下,找不到关于这种行为的单一示例,也许是因为这是不可能实现的?
我将在属性网格中使用这些属性,因此自动验证可能很方便。
目前我用以下方式解决了限制最小值的问题:
private int size;
[DefaultValue(8)]
public int Size
{
get
{
return size;
}
set
{
size = Math.Max(value, 1);
}
}
所以这就像是MinValue(1)的作用