System.Math-Methoden
LINQ to SQL unterstützt die folgenden Math-Methoden nicht.
Unterschiede zu .NET
.NET Framework weist gegenüber SQL Server eine andere Rundungssemantik auf. Die Round-Methode in .NET Framework führt eine mathematische Rundung (Banker's Rounding) durch, bei der Zahlen, die mit ,5 enden, nicht auf die nächsthöhere Ziffer, sondern auf die nächste gerade Ziffer gerundet werden. 2,5 wird zu 2 abgerundet, während 3,5 zu 4 aufgerundet wird. (Mit dieser Technik können bei großen Datentransaktionen systematische Abweichungen gegenüber höheren Werten vermieden werden.)
In SQL rundet die ROUND
-Funktion stattdessen immer weg von 0. 2,5 wird daher auf 3 gerundet (im Gegensatz zur Rundung auf 2 in .NET Framework).
LINQ to SQL leitet an die SQL-Semantik ROUND
weiter und versucht nicht, eine mathematische Rundung zu implementieren.