网络服务,货币输入

时间:2011-02-11 05:07:44

标签: c# asp.net web-services currency

Web服务API:我注意到有些公司喜欢将整数作为“货币”金额传递,而不是传递带小数位的十进制数据类型($ 100.29)是否有充分的理由为什么他们选择整数作为十进制数据类型的货币?

示例,他们这样做

  • 100 = $ 1.00
  • 10043 = $ 100.43

为什么不这样做

  • 1.00或1 = $ 1
  • 100.43 = $ 100.43

3 个答案:

答案 0 :(得分:0)

并非所有文化都使用相同的小数点字符。通过使用最小的相关货币单位(所以这里是美分而不是美元),可以避免接受/发出小数点字符的问题。

答案 1 :(得分:0)

实际上,我认为可以在answer to this other question中找到可以增强理解的最佳解释。

答案 2 :(得分:0)

不,在提交给服务器进行转换之前,我没有看到将100因素变为整数的任何实际好处。而且,这非常取决于他们内部实施什么是最好的方式。

我确实在其中一个具有此实现的Web服务中注意到了这一点,我发现的原因是因为他们希望将值与其他参数结合起来作为内部校验和验证的HASH。