2013-06-25 16 views
10

die RegularExpression(@"^\d{1,15}$")] verwendet, mag ich den Benutzer Ziffern einzugeben bis zu 15 in der Länge, die die Fehlermeldung zurück ‚Bitte geben Sie eine Telefonnummer an 15 Stellen nach oben‘ wenn dies nicht richtig istRegulärer Ausdruck Fehlermeldung

[Required(ErrorMessage = ("Please enter up to 15 digits for a contact number")), Display(Name = "Contact Number"), RegularExpression(@"^\d{1,15}$")] 
public string ContactNumber { get; set; } 

Wenn der Benutzer dies nicht tut ich mit der Fehlermeldung links am:

The field Contact Number must match the regular expression '^\d{1,15}$'. 

statt 'Please enter up to 15 digits for a contact number' ... weiß jemand, warum? danke

Antwort

30

Sie haben die ErrorMessage der RequiredAttribute zugewiesen (die Sie in diesem Fall wegen des regulären Ausdrucks absolut nicht brauchen). Also:

[Display(Name = "Contact Number")] 
[RegularExpression(@"^\d{1,15}$", ErrorMessage = "Please enter up to 15 digits for a contact number")] 
public string ContactNumber { get; set; } 
+0

das ist super danke für die Hilfe Jungs – John

4

Sie benötigen eine Nachricht in RegularExpression Attribut zu setzen, nicht Required Attribut.

Sie haben Ihre Fehlermeldung zu Required Attribut hinzugefügt, was bedeutet, dass es angezeigt wird, wenn das Feld leer ist.