Atributos y Anotaciones de Datos en C#
Los atributos en C# son una forma poderosa de agregar metadatos a clases, métodos, propiedades y otros
elementos de código.
Las anotaciones de datos (Data Annotations) son un conjunto de atributos muy usados para
validar modelos en aplicaciones web o APIs, especialmente con ASP.NET.
Uso de atributos básicos
Puedes aplicar atributos para describir características adicionales.
[Obsolete("Usa NuevoMetodo en su lugar.")]
public void MetodoAntiguo() {
Console.WriteLine("Este método está obsoleto.");
}
Esto genera advertencias al usar el método.
Anotaciones de datos en modelos
Las Data Annotations se usan para definir reglas de validación en propiedades de clases.
using System.ComponentModel.DataAnnotations;
public class Usuario {
[Required]
[StringLength(50)]
public string Nombre { get; set; }
[Range(18, 99)]
public int Edad { get; set; }
}
Estas reglas se usan automáticamente en frameworks como ASP.NET para validar formularios y entradas.
Validación de modelos
Puedes validar objetos usando un ValidationContext.
var usuario = new Usuario { Nombre = "", Edad = 15 };
var contexto = new ValidationContext(usuario);
var resultados = new List();
bool valido = Validator.TryValidateObject(usuario, contexto, resultados, true);
foreach (var error in resultados) {
Console.WriteLine(error.ErrorMessage);
}
Esto imprime los errores de validación configurados por los atributos.
Buenas Prácticas
Usa atributos para mejorar la claridad y la validación del modelo sin lógica adicional. Combina atributos personalizados si necesitas reglas específicas. Evita validaciones demasiado complejas en atributos. Documenta bien el significado de cada anotación para facilitar el mantenimiento.