我有一个正则表达式来验证带有两位小数的十进制字段,这里是de code
[RegularExpression(@"^[0-9]{1,11}(?:\.[0-9]{1,2})?$", ErrorMessage = "El campo {0} debe ser un numero con máximo 2 decimales")]
public decimal? amount { get; set; }
当我创建一行时它工作正常,但是当我编辑它对字段进行减法时,它会抛出ErrorMessage异常,对其进行调试我可以看到值是正确的,我的意思是它只有两位小数并且是正数
减法中涉及的两个字段都是十进制类型
最奇怪的是,它运作良好,突然停止运转
感谢有人可以帮我解决这个问题
答案 0 :(得分:0)
/^[0-9]{1,11}(?:\.[0-9]{1,2})?$/
表示:
“1到11位数,optionnaly后跟一个点和1或2位小数”。
它不适用于减号或加号。 “12345678901.12”有效,因此为“3”,但不是“+25”,也不是“-43.5”。 它不会处理小于1的十进制值,例如“.42”