基于集合的属性是否有数据注释验证规则?
我有以下
<DisplayName("Category")>
<Range(1, Integer.MaxValue, ErrorMessage:="Please select a category")>
Property CategoryId As Integer
<DisplayName("Technical Services")>
Property TechnicalServices As List(Of Integer)
我正在寻找一个验证器,我可以将它添加到 TechnicalServices 属性以设置集合大小的最小值。
最佳答案
我认为这样的事情可能会有所帮助:
public class MinimumCollectionSizeAttribute : ValidationAttribute
{
private int _minSize;
public MinimumCollectionSizeAttribute(int minSize)
{
_minSize = minSize;
}
public override bool IsValid(object value)
{
if (value == null) return true;
var list = value as ICollection;
if (list == null) return true;
return list.Count >= _minSize;
}
}
有改进的余地,但这是一个工作的开始。
关于vb.net - 集合的MVC数据注释验证规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4340205/