我希望将以下模型属性配置为接受最大长度为50,最小长度为7且仅允许数字的字符串。
[Display(Name="My Number Property"),
StringLength(50, ErrorMessage = "Too Long, try again."),
RegularExpression(@"\d{7,50}?, ErrorMessage = "Digits Only Please.")]
public string MyModelProperty
{
get
{
return this.myModelProperty;
}
set
{
this.myModelProperty = value;
}
}
我必须这样做是因为在以下所有值中,该模型使该模型无效。
" 0" " 0123456789" " 01234567890123456789" " 01234567890123456789012345678901234567890123456789"
答案 0 :(得分:1)
通过添加以下锚点来更改RegularExpression
:
[Display(Name="My Number Property"),
StringLength(50, ErrorMessage = "Too Long, try again."),
RegularExpression(@"^\d{7,50}$", ErrorMessage = "Digits Only Please.")]
顺便说一下,你也有语法错误:
RegularExpression(@"\d{7,50}?, ErrorMessage = "Digits Only Please.")
^-- it's missing a quote
您可以查看 documentation :
中的语法