假设我有wcf ria服务的实体元数据的十进制属性:
public Nullable<decimal> Amount { get; set; }
我想这个字段的输入是0.00,意味着用户必须在小数点后输入2位数字。如果什么都没有,.00必须在那里。所以,123.00,12.23是档案。但12或3345是不对的。
然后我想在元数据类的此属性上将正则表达式作为验证属性。 我该怎么做? 还有其他解决办法吗?
谢谢你的回答,伙计们。这是测试:
[RegularExpression("^\\d*\\.\\d{2}$", ErrorMessage = "Put the right number for amount")]
public Nullable<decimal> Amount { get; set; }
这不起作用。所有123,123。,123.00都可以接受。
上述解决方案仅适用于字符串,如下所示:
[RegularExpression("^\\d*\\.\\d{2}$", ErrorMessage = "Put the right number for amount")]
public string Amount { get; set; }
如何让它适用于Decimal?
答案 0 :(得分:0)
使用此正则表达式:
\d*\.\d\d
答案 1 :(得分:0)
试试这个表达
^\d*\.\d{2}$
^
是字符串
\d
是一个数字
*
表示前面几个或多个表达式,\d
{2}
正好说出前面两个表达式,\d
$
是字符串结尾的锚点
如果您不使用锚点,您可以在前面或后面放置任何你想要的东西,它会匹配。