System.Math メソッド (LINQ to SQL)
LINQ to SQL は、次の Math メソッドをサポートしていません。
.NET との相違
.NET Framework で使用される丸めセマンティクスは SQL Server とは異なります。 .NET Framework の Round メソッドは銀行型丸めを実行します。銀行型丸めでは、.5 で終わる数値は次の桁に切り上げられるのではなく、最も近い偶数になるように丸められます。 たとえば、2.5 は 2 に丸められ、3.5 は 4 に丸められます (この方法は、大規模なデータ トランザクションで、値が大きくなる組織的バイアスの回避に役立ちます)。
SQL では、ROUND 関数は常に、0 から遠ざかる方向に丸めを実行します。 したがって、2.5 は 3 に丸められます。これは、2 に丸められる .NET Framework とは対照的です。
LINQ to SQL は、SQL の ROUND セマンティクスに到達するため、銀行型丸めを実装しようとしません。