仅针对一种文化以特定方式格式化货币

时间:2013-04-17 21:44:37

标签: c# cultureinfo culture

我正在开发一种多语言应用程序,用于显示不同货币的产品价格。我使用.net库来根据文化格式化货币,例如。

CultureInfo current = CultureInfo.CurrentCulture;
        return value.Value.ToString("C", current);

俄罗斯客户对此显示效果并不满意,例如他们想要100руб。现在显示而不是100,00р。

是否有一种简单的方法可以修改价格字符串的生成方式,而不会影响其文化货币的其他转化?

1 个答案:

答案 0 :(得分:0)

您可以为某些文化使用自定义价格格式。 例如:如果您的数据库中有Culture表。您应该添加默认值为“{0:C}”的 CustomPriceFormat 列。在这种情况下,您可以更改一些文化的价格格式。 然后你就可以这样使用:

var priceString = string.Format(currentCulture.CustomPriceFormat, d);

对于俄罗斯文化 CustomPriceFormat 是“{0:N}руб”。