No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de ASP.NET Core

Curso de ASP.NET Core

Juan Carlos Ruiz

Juan Carlos Ruiz

Data annotations

29/35
Recursos

Aportes 14

Preguntas 5

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Otras que nos pueden servir

  • Rango de valores
    [Range(12, 120, ErrorMessage = “You must be between 12 and 120 years of age.”)]
  • Tipo de correo
    [EmailAddress(ErrorMessage = “Please enter a valid email address.”)]
  • El atributo sera ignorado para la base de datos.
    [NotMapped]
  • Que mostrar cuando sea nulo el valor
    [DisplayFormat( NullDisplayText = “Null name” )]

A mi me corta la longitud de la cadena de caracteres cuando ya son 5, no me deja escribir de más.

[StringLength(5)]

Es decir, si funciona, pero no me visualiza el mensaje de advertencia que debe ser máximo 5 caracteres, pues desde un principio no me deja escribir más de 5.
¿Qué puede ser?

Si no mal recuerdo puedes usar el required de la siguiente manera:

[Required(ErrorMessage = "El atributo {0} es requerido.")]

Y podras usarlo para todos los campos.

Para expresiones regulares: [RegularExpression(@"^[a-zA-Z’’-’\s]{1,40}$", ErrorMessage = “Characters are not allowed.”)]

Estas validaciones se muestran en forma de lista en la parte superior del formulario. Desde mi punto de vista es mejor mostrarlas debajo del control apropiado, esto se puede hacer poniendo una etiqueta con el atributo asp-validation-for, podemos aplicar estilos a esta etiqueta y hacer que se vea más atractivo.

<div>
	<label asp-for="Nombre"></label>
        <input asp-for="Nombre" />
        <span asp-validation-for="Nombre"></span>
</div>

Debido a la actualización del NetCore, ahora limitan el ingreso de carácteres y no te da ningún aviso el

[StringLength(5)]

Hice una ayuda dinámica para el usuario con js al lado del input text:

HTML:

        <input asp-for="Nombre" id="Nombre" oninput="ayudaUsuario()"/>
        <div id="NombreHelper" style="display:inline;"></div>


	-----------------------------------------
	<script>

   		 $(document).ready(function(){
        
   		 });

    		function myFunction() {
        		var x = document.getElementById("Nombre").value;
        		document.getElementById("NombreHelper").innerHTML = "You wrote: " + x.length + ", the maximum length 
			is 5.***";
    		} 

	</script>

	

😎

Interesante

Excelente! todo esto muy util para validar los forms

Muy interesante lo del Data Annotations.

Cómo podría darle estilos a las data annotations?

esas validaciones son básicas pero muy practicas!.

DataAnnotations nos permite llevar a cabo validaciones de datos de acuerdo a nuestras necesidades. Esas necesidades son decoraciones que indicaremos a los miembros de nuestras entidades y Datos. Una decoración corresponderá a una validación.

https://geeks.ms/jorge/2012/04/26/validando-sin-parar-uso-de-dataannotations/