none
Expresión regular en metadata para validar flotantes RRS feed

  • Pregunta

  • Hola, tengo ya un par de días buscando ayuda en Internet, y haciendo pruebas y no termino de implementar un requerimiento que tengo, ojalá que alguien me pueda apoyar

    Se trata de un proyecto en Silverlight 5, con una BD de SQL, utilizando RIA Services

    En la definición del metadata de una tabla, en un campo que es de tipo flotante, necesito poder definir como válidos números positivos que tengan un máximo de una decimal y un máximo de 3 dígitos enteros, por ejemplo 145.5, no serían válidos por ejemplo: 1456 ni 45.55

    así cuando en mi aplicación capture ese campo en algún Datagrid o un TextBox, me indique el mensaje de error correspondiente

    ya puse esto:

                [RegularExpression(@"^(\d+)?(\,\d)?$",
                     ErrorMessage = "Se requiere una expresión numérica positiva de máximo 3 dígitos que puede tener 1 decimal")]
                public double TiempoEstandarHrs { get; set; }

    y me funciona bien, solo que no me limita el número de dígitos enteros

    intenté poniendo:

    ^(\d{0-3})?(\,\d)?$

    pero cuando pongo eso, me marca el error con cualquier cantidad que ponga ¿? alguien podría ayudarme??

    Saludos y gracias


    cyndyrdz

    lunes, 27 de enero de 2014 18:10

Respuestas

  • Finalmente quedó así:

                [RegularExpression(@"^(\d{1,3})?(\,\d{1})?$", 
                     ErrorMessage = "Se requiere una expresión numérica positiva de máximo 3 dígitos que puede tener 1 decimal")]

    y funciona como necesitaba...

    cyndyrdz

    miércoles, 29 de enero de 2014 22:34

Todas las respuestas

  • Qué bárbaros compañeros, no se me amontonen con los comentarios....

    Si alguien sabe que estoy haciendo una barbaridad, también por favor dígame, soy absolutamente nueva en esto, antes programaba en Visual Basic 6.0

    Gracias


    cyndyrdz

    lunes, 27 de enero de 2014 21:59
  • Finalmente quedó así:

                [RegularExpression(@"^(\d{1,3})?(\,\d{1})?$", 
                     ErrorMessage = "Se requiere una expresión numérica positiva de máximo 3 dígitos que puede tener 1 decimal")]

    y funciona como necesitaba...

    cyndyrdz

    miércoles, 29 de enero de 2014 22:34