Cuando creas un RangeValidator
en una aplicación ASP.NET debes recordar establecer el tipo de dato que estás comparando.
Este es un ejemplo de un error común. Tenemos el siguiente validador:
- <asp:RangeValidator
- ID="ValidadorMinimo"
- runat="server"
- ControlToValidate="NumberOfPersons"
- CssClass="validador"
- ErrorMessage="Minimum"
- ForeColor=""
- MinimumValue="2"
- MaximumValue="10" >*</asp:RangeValidator>
Al abrir la página aspx que lo contiene, obtenemos el siguiente error:
The MaximumValue 10 cannot be less than the MinimumValue 2 of ValidadorMinimo.
Lo que está ocurriendo es que por default el tipo de datos es String
, y hablando de cadenas de texto, el 10 es menor que el 2.
Como queremos comparar números enteros, debemos establecer la propiedad Type
del validador a Integer
, de esta manera:
- <asp:RangeValidator
- ID="ValidadorMinimo"
- runat="server"
- ControlToValidate="NumberOfPersons"
- CssClass="validador"
- ErrorMessage="Minimum"
- ForeColor=""
- MinimumValue="2"
- MaximumValue="10"
- Type="Integer"
- >*</asp:RangeValidator>