以下が適用されます。
var rounded = Decimal.Round(7.635m, 2);
//rounded: 7.63
私にとって、これは間違った予期しない動作です。roundedの値は7.64であると想定します。
これを達成するために、私はできる:
var rounded = Decimal.Round(7.635m, 2, MidpointRounding.AwayFromZero);
//rounded: 7.64
これが のデフォルトの動作ではないDecimal.Round
のはどうしてですか? これには正当な理由がありますか?