Benutzerdefinierter regulärer Ausdruck wird auf der Clientseite nicht überprüft

Ich habe ein benutzerdefiniertes Attribut erstellt, um auf der Clientseite einen positiven Dezimalwert zu überprüfen. Das Problem ist, dass ich den regulären Ausdruck direkt auf die Eigenschaft anwenden kann, aber wenn ich das benutzerdefinierte Attribut verwende, funktioniert es nicht.

Arbeitsmodus

    [RegularExpression(@"^(?!0?(,0?0)?$)([0-9]{0,3}(,[0-9]{1,2})?)?$", ErrorMessage = "Largura inválida.")]
    [Required(ErrorMessage = "Largura obrigatória.")]
    [Display(Name = "Formato Aberto")]
    public decimal SizeOpenedWidth { get; set; }

Benutzerdefiniertes Attribut:

public class PositiveDecimalAttribute : RegularExpressionAttribute
{
    public PositiveDecimalAttribute() : base("^(?!0?(,0?0)?$)([0-9]{0,3}(,[0-9]{1,2})?)?$") { }
}

n der Eigenschaft integriert:

    [PositiveDecimal(ErrorMessage = "Largura inválida.")]
    [Required(ErrorMessage = "Largura obrigatória.")]
    [Display(Name = "Formato Aberto")]
    public decimal SizeOpenedWidth { get; set; }

Im zweiten Fall wird bei der clientseitigen Überprüfung die folgende Fehlermeldung angezeigt:

The field Formato Aberto must be a number.

Muss ich das neue Attribut bei der clientseitigen Validierung einbinden?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage