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>