Saltar al contenido

La validación de String MinLength y MaxLength no funciona (asp.net mvc)

No dejes de divulgar nuestro espacio y códigos en tus redes, apóyanos para hacer crecer esta comunidad.

Longitud máxima se usa para que Entity Framework decida qué tan grande hacer un string campo de valor cuando crea la base de datos.

Desde MSDN:

Especifica la longitud máxima de array
o string datos permitidos en una propiedad.

Longitud de la cuerda es una anotación de datos que se utilizará para la validación de la entrada del usuario.

Desde MSDN:

Especifica la longitud mínima y máxima de caracteres que se permiten en un campo de datos.

No personalizado

Utilizar [String Length]

[RegularExpression(@"^.3,$", ErrorMessage = "Minimum 3 characters required")]
[Required(ErrorMessage = "Required")]
[StringLength(30, MinimumLength = 3, ErrorMessage = "Maximum 30 characters")]

30 es la longitud máxima
Longitud mínima = 3

Clase StringLengthAttribute personalizada

public class MyStringLengthAttribute : StringLengthAttribute

    public MyStringLengthAttribute(int maximumLength)
        : base(maximumLength)
    
    

    public override bool IsValid(object value)
    
        string val = Convert.ToString(value);
        if (val.Length < base.MinimumLength)
            base.ErrorMessage = "Minimum length should be 3";
        if (val.Length > base.MaximumLength)
            base.ErrorMessage = "Maximum length should be 6";
        return base.IsValid(value);
    


public class MyViewModel

    [MyStringLength(6, MinimumLength = 3)]
    public String MyProperty  get; set; 

Intenta usar esto attributepor ejemplo, para la longitud mínima de la contraseña:

[StringLength(100, ErrorMessage = "Максимальная длина пароля 20 символов", MinimumLength = User.PasswordMinLength)]

Lo hacen ahora, con la última versión de MVC (y paquetes de validación de jquery). mvc51-notas-de-lanzamiento#Discreto

¡Gracias a esta respuesta por señalarlo!

Aquí puedes ver las comentarios y valoraciones de los lectores

Nos encantaría que puedieras compartir este post si te fue de ayuda.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *