如何从 Web API 获取十进制值 .00

Posted

技术标签:

【中文标题】如何从 Web API 获取十进制值 .00【英文标题】:How to get decimal value .00 from Web API 【发布时间】:2021-04-06 18:22:50 【问题描述】:

我有一个返回十进制值 52.00 的 Web API 方法,当我调试 Web API 时,该值正确出现,但是当它在邮递员中返回结果时,它仅变为 52,但它应该为 52.00,如果小数为超过两个,然后将其四舍五入到 0.00

这是我调试时的结果

这里是邮递员的结果

【问题讨论】:

这能回答你的问题吗? How can I force a minimum number of decimal places in Json.net? 【参考方案1】:

52、52.0、52.00 或 52.000 是相同的值。 您想要的似乎是将小数、浮点数、双精度或整数格式化为 2 个小数。 喜欢Leave only two decimal places after the dot。

如果您需要更具体的格式,可以查看有关数字字符串格式的 Msdn 参考指南。 https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings

但问题仍然模棱两可:当精度超过小数点 2 时,预期的结果是什么?您要修剪还是舍入该值?

我不会将这些格式应用于 Json,因为您可能会降低精度,但只会格式化显示。

【讨论】:

【参考方案2】:
    如果你的属性数据类型是字符串,那么你可以使用

String.Format("0:0.00", 52.00);

decimalVar.ToString("F"); 23.456 → 23.46

    如果属性是十进制的,则它自己带有圆形

Decimal.Round(52.167, 2)

52.167 → 52.17

这可能会有所帮助。

【讨论】:

以上是关于如何从 Web API 获取十进制值 .00的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Java 中的十进制整数中获取十六进制值?

如何从 Db2 中的十进制字段中获取无效值列表?

如何从 TextField 获取十进制值并在 Objective C 中使用它进行计算

Web 服务调用导致 System.Xml.XmlException:'.',十六进制值 0x00

如何从 iOS 私有 api 二进制文件中获取标头和函数?如何对应用程序进行逆向工程?

如何从 JavaFX ColorPicker 颜色中获取十六进制 Web 字符串?