5

Je suis décoré d'un ViewModel dans mon site ASP.NET MVC 2 avec les attributs de validation System.ComponentModel.DataAnnotations. Pour un de mes champs, nommé Price, je veux valider que la valeur ne soit pas en dessous de zéro, dans ce cas 0.ASP.NET MVC 2 et ComponentModel.DataAnnotations Validation: attribut de valeur minimale

Je sais que RangeAttribute existe pour validation avec une extension inférieure et supérieure, mais fait quelque chose comme un MinimumValueAttribute existent pour la validation avec seulement une moindre ampleur?

Si non, je suppose que je vais rouler le mien.

+0

rappeler que rouler votre propre est facile pour le côté serveur , mais vous devez réécrire la validation pour le côté client. –

+0

@rockinthesixstring c'est pourquoi j'ai posé la question plutôt que d'aller de l'avant et de mettre en place la mienne. Bien sûr, vous pouvez utiliser Reflector pour voir comment 'RangeAttribute' effectue une validation côté client. :) –

+0

yup ... Je pensais juste qu'il fallait dire pour le prochain gars qui vient à cette question. Rouler votre propre validation est une douleur dans le cul, surtout si vous devez réutiliser la validation sur plusieurs vues. –

Répondre

10

avant de rouler votre propre - essayez [Range(0.05, Double.MaxValue)]

+0

Cela peut être la solution la plus propre. L'implémentera pour l'instant, à moins que quelqu'un ne déterre quelque chose de plus propre. –

2

Je ne sais pas si RegularExpression est la « meilleure » solution, mais vous pouvez lui donner un coup

"^\$?\d+(\.(\d{2}))?$"