正则表达式错误消息

时间:2013-06-25 11:51:22

标签: c# asp.net-mvc validation

使用RegularExpression(@"^\d{1,15}$")],我希望用户输入长度最多为15的数字,这会返回错误消息'如果这样,请输入最多15位的联系电话号'不正确

[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; }

如果用户未能执行此操作,我将收到错误消息:

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

而不是'Please enter up to 15 digits for a contact number' ...有谁知道为什么? 感谢

3 个答案:

答案 0 :(得分:35)

您已将ErrorMessage分配给RequiredAttribute(由于正则表达式,您在此情况下绝对不需要)。所以:

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

答案 1 :(得分:4)

您需要将邮件置于RegularExpression属性中,而不是Required属性。

您已将错误消息添加到Required属性,这意味着当该字段为空时会显示该消息。

答案 2 :(得分:0)

您可以尝试以下代码:

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