У меня есть ValidationAttribute
, как показано ниже, где проверяется, что определенное количество значений было введено в форме. В настоящее время она используется только на свойстве с типом short?[]
Custom ValidationAttribute для нескольких типов данных
public class RequiredArrayLength : ValidationAttribute
{
public int TotalRequired { get; set; }
public override bool IsValid(object value)
{
if(value != null)
{
var array = value as short?[];
return array.Where(v => v.HasValue).Count() >= TotalRequired;
}
return false;
}
}
Есть ли способ, что я могу изменить это ValidationAttribute
поэтому он будет работать с другими числовыми массивами, такими как int?[]
Имеет ли вышеуказанный дескриптор нулевые типы данных? – mheptinstall
Да, если 'value' is' [2, null, 4] ', результат' count' будет равен 3 –
Если вы хотите считать только ненулевые значения, вы можете использовать 'if (enumerator.Current! = null) {count ++; } ' –