下面列出的场景的最佳实践是什么?
我们有一个应用程序,我们希望支持多种货币。软件将根据用户的区域设置和区域设置来指定正确的数字格式,例如$10,000.00或10.000,00₴等。
但是,我们希望能够根据货币ID (可能是三个字母的ISO4217代码)来格式化不同的数字。我们的想法是在数据库中存储每个货币的表,然后请求用户选择将使用的货币符号。然后,程序将根据区域设置对所有数字进行格式化,但将使用程序中定义的货币符号。
因此,给定以下值和货币
10000澳元
5989.34美元
450欧元
该程序将输出
$10,000.00
$5,989.34
450.00欧元
或者使用区域设置,将数字格式化为#####,##$,结果将是;
10000,00美元
5989,34美元
450,00欧元
考虑区域设置/区域数字格式,但显示不同的货币,这方面的最佳实践是什么?
我希望这是有意义的。
使用的技术是c# .NET 2.0。
发布于 2009-07-01 21:33:34
我认为这个问题是关于你应该做什么的一个很好的和明确的答案。
SO - Proper currency format when not displaying the native currency of a culture
这个问题很好地回答了如何在C#中做到这一点
发布于 2009-04-24 09:38:43
您可以存储每个货币代码的区域性字符串,而不是只存储货币符号,因此AUD --> en-AU
CultureInfo ci = new CultureInfo("en-AU");
currencyValue.ToString( "c", ci );
我不确定在格式化方面有多大的灵活性。
不确定这是否有帮助:
发布于 2009-04-24 07:07:54
您可以将货币值存储为小数,然后将货币符号附加到UI上。
福勒在这里讨论了Patterns of Enterprise Application Architecture中的货币模式:http://www.martinfowler.com/eaaCatalog/money.html
https://stackoverflow.com/questions/784794
复制相似问题