ASP.NET MVC. Можно ли использовать MVC Foolproof Validation для проверки массивов?

Например, у меня есть следующая модель:

public class MyModel {
public Line[] Lines{get;set;}
}

public class Line {
public int Quantity{get;set;}
public int MaxQuantity{get;set;}
}

Поле "Количество" должно быть меньше, чем "MaxQuantity", поэтому я попытался использовать атрибут проверки "LessThanOrEqualTo":

public class Line {
[LessThanOrEqualTo("MaxQuantity")]
public int Quantity{get;set;}
public int MaxQuantity{get;set;}
}

Но это не работает на стороне клиента из-за неправильного имени зависимого свойства, которое я считаю:

<input type="number" value="1" name="Lines[0].Quantity" data-val-is-passonnull="False" data-val-is-operator="LessThanOrEqualTo" data-val-is-dependentproperty="MaxQuantity" data-val-is="Quantity must be less than or equal to MaxQuantity." data-val="true">
<input type="hidden" value="1" name="Lines[0].MaxQuantity">

Ты это видишь "data-val-is-dependentproperty="MaxQuantity""но реальное имя входа"Lines[0].MaxQuantity""

Есть ли способ это исправить?

1 ответ

Включили ли вы mvcfoolproof.unobtrusive.min.js в свой обзор или в свою главную страницу? Вы проверили, что скрипт загружен до того, как его использует ваш код?

С моей установкой Foolproof Nuget она была помещена в папку "Клиентские сценарии" из установки Foolproof Nuget.

Другие вопросы по тегам