Math.Roundで近似値丸めではなく四捨五入を行うには?

「JIS丸め」しかできなかったMath.Roundが成長して帰ってきました。

メモ : このメソッドは、.NET Framework version 2.0 で新しく追加されたものです。

引数のMidpointRounding.AwayFromZeroがポイント。

このメソッドの動作は、IEEE 規格 754、セクション 4 に従います。このような丸めは、近似値への丸めまたは銀行の丸めと呼ばれることがあります。mode が ToEven の場合に実行される丸めは、近似値への丸めまたは銀行の丸めと呼ばれることがあります。
http://msdn2.microsoft.com/ja-jp/library/ms131274%28VS.80%29.aspx

posValue = 3.45D
result = Math.Round(posValue, 1, MidpointRounding.AwayFromZero)

偶数丸めのメモ:

・丸めを行う一つ下の桁を見て5よりも小さければ、切り捨て
・丸めを行う一つ下の桁を見て5よりも大きければ、切り上げ
・丸めを行うよりも下の桁が、5ちょうどの場合、丸めを行う桁が、偶数になるようにする。

"JIS Z 8401 数値の丸め方" の検索結果 約 46 件