IValidationAttributeFormatter Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Formatta un modello di messaggio di errore di convalida con argomenti specifici dell'attributo.
Usato dalla pipeline di localizzazione della convalida per produrre messaggi di errore completamente formattati da modelli localizzati che contengono segnaposto posizionale oltre {0} (il nome visualizzato).
public interface class IValidationAttributeFormatter
public interface IValidationAttributeFormatter
type IValidationAttributeFormatter = interface
Public Interface IValidationAttributeFormatter
Commenti
Per aggiungere il supporto della formattazione per un attributo di convalida personalizzato, sono disponibili due opzioni:
- Implementare IValidationAttributeFormatter direttamente sull'attributo stesso. ValidationAttributeFormatterRegistry verifica la presenza di questo primo attributo e usa automaticamente l'attributo come formattatore.
- Creare un'implementazione separata IValidationAttributeFormatter e registrarla tramite AttributeFormatters chiamando 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)));
Metodi
| Nome | Descrizione |
|---|---|
| FormatErrorMessage(CultureInfo, String, String) |
Formatta l'oggetto specificato |