Skip to content

Catálogos y mensajes de validación ​

Catálogos de mensajes ​

Para no repetir la clave y el localizador, agrupa los mensajes de un área en una clase propia o usa MessageFactory.

csharp
public sealed class ErrorMessages(IMessageLocalizer localizer)
{
    public Message Required(string field) =>
        Message.FromResource("error.required", localizer)
            .With("field", field);
}

El catálogo mantiene las claves cerca de su significado de negocio y deja a los consumidores trabajar con mensajes ya preparados.

Mensajes asociados a campos ​

Las extensiones de validación, como ForField(...), expresan convenciones comunes y completan parámetros de forma consistente.

csharp
var message = Message
    .FromResource("error.min_length", localizer)
    .ForField("Contraseña")
    .With("min", 8);

Usa una plantilla por tipo de incumplimiento y proporciona los datos variables como parámetros. El validador puede conservar un código estable para integraciones y un mensaje localizado para la persona usuaria.

Guía de decisión ​

NecesidadUsa
Texto único en códigoMessage.Create(...) o conversión desde string
Texto traducibleMessage.FromResource(...)
Datos dentro de una plantillaWith(...)
Grupo reutilizable de mensajesMessageFactory o un catálogo propio
Mensaje asociado a un campoForField(...)

Uso personal limitado. Uso comercial sujeto a autorización escrita.