5

Zdobyłem ViewModel w mojej witrynie ASP.NET MVC 2 z atrybutami walidacji System.ComponentModel.DataAnnotations. W przypadku jednego z moich pól o nazwie Cena chcę potwierdzić, że wartość nie jest poniżej pewnego zakresu, w tym przypadku 0.ASP.NET MVC 2 i ComponentModel.DataAnnotations Sprawdzanie poprawności: atrybut minimalnej wartości

Wiem, że RangeAttribute istnieje dla sprawdzania poprawności z niższym i wyższym zakresem, ale robi coś podobnie jak MinimumValueAttribute istnieje do sprawdzania poprawności tylko z mniejszym zakresem?

Jeśli nie, chyba po prostu rzucę własną.

+0

pamiętać, że toczenia własne jest łatwe po stronie serwera , ale musisz przepisać walidację po stronie klienta. –

+0

@rockinthesixstring, dlatego właśnie zadałem pytanie, zamiast po prostu realizować własne. oczywiście możesz użyć Reflectora, aby zobaczyć, jak 'RangeAttribute' dokonuje walidacji po stronie klienta. :) –

+0

tak ... Po prostu poczułem, że trzeba powiedzieć o kolejnym facecie, który przychodzi na to pytanie. Rolowanie własnej weryfikacji to ból w dupę, szczególnie jeśli musisz ponownie użyć sprawdzania poprawności w wielu widokach. –

Odpowiedz

10

przed toczyć własną rękę - spróbuj [Range(0.05, Double.MaxValue)]

+0

To może być najczystsze rozwiązanie. Zaimplementuję go na razie, chyba że ktoś wykopie coś jeszcze czystszego. –

2

Nie wiem, czy RegularExpression jest „najlepsze” rozwiązanie, ale można nadać mu strzał

"^\$?\d+(\.(\d{2}))?$" 
Powiązane problemy