我在前端使用Javascript,在中间层使用C#,在数据库中使用Oracle 9i。

将2位小数精度的数字格式化为货币时的最佳做法是什么?在这三层中的任何一层中哪些层应该是优选的?

请记住,用户可以在应用程序的几个屏幕上编辑这些金额。

有帮助吗?

解决方案

小数的存储精度可以高于2位。既然你提到了C#和Javascript,我可以假设你正在使用ASP.NET作为前端。

必须在ASP.NET代码中处理货币显示,才能根据用户的locale / cultureinfo显示货币。

对于gridviews和其他显示控件,在C#中,您可以使用字符串格式化选项: {0:c} 来显示具有正确符号和2位小数的货币。

其他提示

我会说尽可能接近用户这样做。不管怎样都不在数据库中,因为DB不会知道用户的语言环境。

更新:在进行货币格式设置时,请注意您向用户显示的信息实际上是正确的。货币格式与货币转换不同......

如果您想对数据执行任何数学运算,那么在Javascript中进行格式化并添加货币符号会更好。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top