IValidationAttributeFormatter Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Formata um modelo de mensagem de erro de validação com argumentos específicos de atributo.
Usado pelo pipeline de localização de validação para produzir mensagens de erro totalmente formatadas de modelos localizados que contêm espaços reservados posicionais além {0} (o nome de exibição).
public interface class IValidationAttributeFormatter
public interface IValidationAttributeFormatter
type IValidationAttributeFormatter = interface
Public Interface IValidationAttributeFormatter
Comentários
Para adicionar suporte à formatação para um atributo de validação personalizado, você tem duas opções:
- Implemente IValidationAttributeFormatter diretamente no próprio atributo. ValidationAttributeFormatterRegistry verifica isso primeiro e usa o atributo como seu próprio formatador automaticamente.
- Crie uma implementação separada IValidationAttributeFormatter e registre-a por meio AttributeFormatters da chamada AddFormatter<TAttribute>(Func<TAttribute,IValidationAttributeFormatter>).
public class MyAttributeFormatter(MyAttribute attribute) : IValidationAttributeFormatter
{
public string FormatErrorMessage(CultureInfo culture, string messageTemplate, string displayName)
=> string.Format(culture, messageTemplate, displayName, attribute.CustomProperty);
}
// Register it in Program.cs:
builder.Services.AddValidationLocalization(options =>
options.AttributeFormatters.AddFormatter<MyAttribute>(
attribute => new MyAttributeFormatter(attribute)));
Métodos
| Nome | Description |
|---|---|
| FormatErrorMessage(CultureInfo, String, String) |
Formata o especificado |