Jede intelligente Art und Weise einen Schwimmer so zu konvertieren:C# Schwimmer Dezimalumwandlung
float f = 711989.98f;
in eine Dezimalzahl (oder doppelt), ohne zu verlieren Präzision?
Ich habe versucht:
decimal d = (decimal)f;
decimal d1 = (decimal)(Math.Round(f,2));
decimal d2 = Convert.ToDecimal(f);
Weitere Details: ich mit einem alten webservice bin eine Schnittstelle, die dieses große Objekt sendet, die einige Felder als Schwimmer hat. Wenn ich die Umwandlung in Dezimal-Kaboom mache ... keine Pennies mehr! – Adrian4B
Wenn dies von einem Web-Service auf der Leitung kommt, ist es wahrscheinlich XML, was bedeutet, dass kein Float oder Dezimalzahlen - nur Strings. Suchen Sie, wo diese Zeichenfolgen in "internes" Format konvertiert werden – mfeingold