コード例 #1
0
ファイル: MoneyMath.cs プロジェクト: al-main/vabank
 public static decimal IntegerRound(decimal amount, IntegerRounding rounding)
 {
     var rounded = Math.Round(amount);
     if (rounding.MinimalAmount == 1)
     {
         return rounded;
     }
     Func<decimal, decimal> roundingMethod;
     switch (rounding.Mode)
     {
         case IntegerRoundingMode.Ceiling:
             roundingMethod = Math.Ceiling;
             break;
         case IntegerRoundingMode.Floor:
             roundingMethod = Math.Floor;
             break;
         case IntegerRoundingMode.Round:
             roundingMethod = Math.Round;
             break;
         default:
             roundingMethod = Math.Round;
             break;
     }
     return roundingMethod(rounded / rounding.MinimalAmount) * rounding.MinimalAmount;
 }
コード例 #2
0
ファイル: Rounding.cs プロジェクト: al-main/vabank
 public Rounding(int floatPrecision, IntegerRounding? integerRounding)
     : this()
 {
     Argument.Satisfies(floatPrecision, x => x >= 0 && x <= 28, "floatPrecision");
     FloatPrecision = floatPrecision;
     IntegerRounding = integerRounding;
 }
コード例 #3
0
 public Rounding(IntegerRounding integerRounding)
     : this(0, integerRounding)
 {
 }
コード例 #4
0
ファイル: Rounding.cs プロジェクト: al-main/vabank
 public Rounding(IntegerRounding integerRounding)
     : this(0, integerRounding)
 {
 }