Per mantenere la convalida del modello pulita, vorrei implementare i miei attributi di convalida, come PhoneNumberAttribute
e EmailAttribute
. Alcuni di questi possono essere implementati come classi semplici che ereditano da RegularExpressionAttribute
.ASP.NET MVC annotazioni dati lato client convalida con RegularExpressionAttribute ereditato
Tuttavia, ho notato che questa operazione interrompe la validazione lato client di questi attributi. Presumo che ci sia un tipo di binding di tipo che fallisce da qualche parte.
Qualche idea su cosa posso fare per far funzionare la validazione lato client?
Codice esempio:
public sealed class MailAddressAttribute : RegularExpressionAttribute
{
public MailAddressAttribute()
: base(@"^[A-Za-z0-9._%+-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}$")
{
}
}
Ma è un RegularExpressionAttribute ed ha un'espressione regolare, che funziona bene se è esplicitamente definito nel modello. – zidar
Esattamente quello che stavo per chiedere – TWith2Sugars