我正在开发一个可能会在全局范围内部署的桌面应用程序。我最大的国际化问题是货币。几个问题:
我使用的是 SQL Server Compact Edition,它支持 MONEY
类型。我的第一个问题是,无论用户的文化如何,这都会处理数据存储吗?
我的第二个问题是数据处理。我知道我可以使用“C”格式字符串,我想这可以显示,但是在保存时如何处理用户输入的值?是否有一种标准的方法来解析输入的值并将其保存到 MONEY
字段,同时具有文化意识并且不必为任何类型的异常编写?
我在 WPF 中使用 C#,但我猜测可能有一个近乎通用的解决方案来解决所有这些问题。
最佳答案
MONEY
类型只是告诉系统使用正确处理货币计算所需的准确性和舍入规则。它对实际货币一无所知。您需要在 UI 中使用货币转换规则进行处理。
该框架使用当前文化为货币字符串格式显示正确的货币符号,但如果您要显示不同的货币,则需要覆盖此行为。
对于 C#/WPF(和 Silverlight),如果您使用 XAML 中的 StringFormat
输出货币,那么它也会处理用户输入(或者至少根据我的经验)。
关于c# - 使用货币的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7097899/