Avatar ·

¿Cómo mostrar un decimal con dos decimales en C#?

¡Hola a todos! Soy un desarrollador C# principiante y me encontré con un problema al formatear números decimales. Necesito mostrar el precio de un producto en formato con dos decimales, por ejemplo: 12.50, 99.99, 145.00.

El problema es que cuando uso Console.WriteLine o ToString(), obtengo una cantidad diferente de decimales. Aquí está mi código:

decimal price = 12.5m;
decimal tax = 0.12345m;
decimal total = 150m;

Console.WriteLine(price);   // Muestra: 12,5
Console.WriteLine(tax);     // Muestra: 0,12345
Console.WriteLine(total);   // Muestra: 150

Probé diferentes opciones, pero no funcionan como deberían. Por ejemplo, escribí:

Console.WriteLine(price.ToString("0.00")); // Muestra: 12,50 - esto está bien
Console.WriteLine(total.ToString("0.00")); // Muestra: 150,00 - también está bien

Pero cuando intento usar el formateo en una cadena, me confundo con los separadores. En Rusia se usa la coma, pero yo necesito un punto.