Un modo intelligente per convertire un float come questo:C# galleggiante alla conversione decimale
float f = 711989.98f;
in un decimale (o doppio), senza perdere di precisione?
ho provato:
decimal d = (decimal)f;
decimal d1 = (decimal)(Math.Round(f,2));
decimal d2 = Convert.ToDecimal(f);
Maggiori dettagli: sto interfacciamento con un vecchio webservice che invia questo enorme oggetto che ha alcuni campi come galleggiante. Quando faccio la conversione in kaboom decimale ... non più soldi! – Adrian4B
se questo proviene da un servizio web sul cavo è probabilmente XML, il che significa che non ci sono fluttuazioni o decimali, solo stringhe. Guarda dove queste stringhe sono convertite in formato "interno" – mfeingold