带有正确字符数的表单验证

时间:2019-04-25 11:12:15

标签: c# asp.net validation asp.net-core

我正在尝试为文本字段添加验证规则。该值应与仅由数字组成的数字匹配。此外,该数字应正好为10个字符长。

这是我到目前为止尝试过的:

[Required]
[RegularExpression("(^[0-9]*$)", ErrorMessage = "Number must be 10 digits and contain only numbers.")]
[MinLength(10)]
[MaxLength(10)]

我想有一种更简单的方法,也许在正则表达式中添加?

2 个答案:

答案 0 :(得分:4)

使用以下正则表达式组合属性只能由数字组成且长度必须恰好为10个字符的约束:^\d{10}$

  

将一个数字(等于[0-9])精确地匹配10次( reference )。

您的数据注释如下所示。

[RegularExpression("^\d{10}$", ErrorMessage = "Number must be 10 digits and contain only numbers.")]

答案 1 :(得分:1)

这可以解决问题吗?

[RegularExpression("(^[0-9]{10}$)", ErrorMessage = "Number must be 10 digits and contain only numbers.")]

(^[0-9]{10}$)

Regex101 Reference