Ada*_*ire 27
怎么样:
Math.Ceiling(myValue * 20) / 20
Run Code Online (Sandbox Code Playgroud)
Mar*_*arc 10
用这个:
Math.Round(mydecimal / 0.05m, 0) * 0.05m;
Run Code Online (Sandbox Code Playgroud)
在T-SQL中可以使用相同的逻辑:
ROUND(@mydecimal / 0.05, 0) * 0.05
Run Code Online (Sandbox Code Playgroud)
我更喜欢这种方法来选择答案,因为您可以直接看到所使用的精度.
这样的东西应该适用于任何步骤,而不仅仅是0.05:
private decimal RoundUp (decimal value, decimal step)
{
var multiplicand = Math.Ceiling (value / step);
return step * multiplicand;
}
Run Code Online (Sandbox Code Playgroud)