5

Sono decorato un ViewModel nel sito ASP.NET MVC 2 con gli attributi di convalida System.ComponentModel.DataAnnotations. Per uno dei miei campi, di nome Prezzo, voglio confermare che il valore non è inferiore a una certa misura, in questo caso 0.ASP.NET MVC 2 e ComponentModel.DataAnnotation Convalida: attributo valore minimo

So che RangeAttribute esiste per la convalida con una inferiore e una misura superiore, ma fa qualcosa come un MinimumValueAttribute esistono per la convalida con solo un limite inferiore?

In caso contrario, credo che farò il mio.

+0

ricordate che a rotazione da soli è facile per lato server , ma è necessario riscrivere la convalida per il lato client. –

+0

@rockinthesixstring è stato il motivo per cui ho posto la domanda anziché andare avanti e implementare la mia. ovviamente, è possibile utilizzare Reflector per vedere come 'RangeAttribute' sta eseguendo la convalida sul lato client. :) –

+0

sì ... Ho appena sentito che doveva essere detto per il prossimo ragazzo che arriva a questa domanda. Rolling your own validation è un rompicapo, soprattutto se devi riutilizzare la convalida su più viste. –

risposta

10

prima di rotolare il proprio - provare [Range(0.05, Double.MaxValue)]

+0

Che in realtà potrebbe essere la soluzione più pulita. Lo implementeremo per ora, a meno che qualcuno non riesca a trovare qualcosa di ancora più pulito. –

2

Non sono sicuro se RegularExpression è la soluzione "migliore", ma si può dare un colpo

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