Что лучший способ состоит в том, чтобы отформатировать десятичную сумму для строкового представления для дисплея UI в корректной информации о культуре?
Добавьте формат к ToString: myDecimal.ToString («#. 00»)
или myDecimal.ToString («C»)
.
Для десятичного числа, допускающего значение NULL ( decimal?
), вам нужно будет использовать свойство .Value ( myNullableDecimal.Value.ToString ("C")
) или привести значение к простой (не допускающий значения NULL) десятичный формат. Не делайте этого, если значение равно null
, иначе вы получите исключение!
См. Документацию для строк стандартного или настраиваемого числового формата.
Почему бы не decimalVar.ToString ("F2", CultureInfo.CurrentCulture);
.Для получения информации о строках формата (часть «F2») и их функциях см. Строки стандартного числового формата и Строки настраиваемого числового формата
use:
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US", false);