我正在写一个验证属性:
public class MyAttribute : ValidationAttribute
{
public override bool IsValid(object aValue)
{
}
}
但是我丢失了最低有效数字,因为小数是作为对象传递的。例如:
(object)0.00
0 //I need 0.00
(object)1.00
1
(object)1.23
1.23
(object)1.230
1.23 //I need 1.230
由于我正在根据提供的确切十进制值进行一些验证,即1.230与1.23不同,虽然在数学上是相同的,但就我的目的而言,它们是不同的。
在编写验证属性时是否有办法获取原始十进制值?
答案 0 :(得分:1)
根据传递的decimal
,您无法进行此类验证。小数1.23
与1.230
(故事结尾)相同,无法确定差异。
您需要将验证更改为接受string
。
答案 1 :(得分:0)
如果您将十进制数作为对象传递,则它将保持小数。注意演示二如何将其转换为字符串并测试小数点后的长度。
ngMocks