我正在研究可能在全球范围内部署的桌面应用程序。国际化的最大问题是货币。几个问题:
我正在使用支持MONEY
类型的SQL Server Compact Edition。我的第一个问题是,无论用户的文化如何,它都能处理数据存储吗?
我的第二个问题是数据处理。我知道我可以使用“C”格式字符串,我想这可以显示,但是在保存时如何处理用户输入的值?是否有一种标准的方法来解析输入的值并将其保存到MONEY
字段,所有这些都是文化感知的,而不必为任何类型的异常编写?
我正在使用WPF中的C#,但我猜这可能是一个接近通用的解决方案。
答案 0 :(得分:5)
MONEY
类型只是告诉系统使用正确处理货币计算所需的精度和舍入规则。它对实际货币一无所知。您需要在UI和货币转换规则中处理它。
框架使用当前文化显示货币字符串格式的正确货币符号,但如果您显示不同的货币,则需要覆盖此行为。
使用C#/ WPF(和Silverlight)如果您在XAML中使用StringFormat
输出货币,那么它也会处理用户输入(或者至少根据我的经验)。