我在 C# MVC 的 Controller 中收到了一个十进制字段。我需要知道它的十进制值是否不超过三个位置。
因此 0.00 和 0.01 都被接受,但 0.001 将被拒绝。
这样做:
if (discount > 1 || discount< (decimal) 0.01)
{
// Log error
}
仅部分有效,因为 0.00 被拒绝。我怎么能那样做?
最佳答案
只取小数除以0.01
的余数。如果它是零,那么小数点后没有值,如果有,那么有:
bool hasSomethingAfterSecondDecimalDigit = discount % 0.01m != 0m;
请注意,这对于负数也将按预期工作。
关于c# - 验证小数是否具有三个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20506022/