Me gustaría convertir un decimal a una cadena, con comas como separadores de miles, y conservar la misma precisión con la que se creó el decimal. (Tendrá 2-5 dígitos significativos)Formato decimal con comas, preservar los ceros finales
decimal d = 1234.4500M;
//I'd like "1,234.4500"
var notRight = d.ToString("###,###.#######"); //1,234.45
var alsoNotRight = d.ToString("###,###.00000");; //1,234.45000
var notRightEither = d.ToString("N"); //1,234.45
var notRightEither2 = d.ToString("G"); //1234.45000
¿No hay construida en forma de hacerlo sin necesidad de analizar la cadena de forma manual? Si no hay una cadena de formato único, ¿cuál es la forma más fácil de hacer esto?
Decidí ver cómo se realiza el formateo. Lamentablemente, el levantamiento de pesas no es código administrado (nada sorprendente) al mirar la [Cadena estándar de formato numérico] (http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx#GFormatString) parece que solo '" G "' (el valor predeterminado) conserva el espacio en blanco. – Guvante