C# 如何将十进制数与硬编码值进行比较?

C# 如何将十进制数与硬编码值进行比较?,c#,C#,直到现在以前都不需要这样做 尝试确保chargeAmount(十进制类型)不低于1美分: if (chargeAmount < 0.01) throw new ArgumentOutOfRangeException("chargeAmount"); if(费用金额

直到现在以前都不需要这样做

尝试确保chargeAmount(十进制类型)不低于1美分:

 if (chargeAmount < 0.01)
                throw new ArgumentOutOfRangeException("chargeAmount");
if(费用金额<0.01)
抛出新ArgumentOutOfRangeException(“chargeAmount”);

我尝试了0.01D,但显然我不确定如何格式化它。

您的意思是希望它是十进制文字而不是双精度文字

if (chargeAmount < 0.01m)
if(费用金额<0.01m)
A不使用
D
(这是为了)-它使用
M
(为了钱):

if(费用金额<0.01M)
抛出新ArgumentOutOfRangeException(“chargeAmount”);

啊,废话。我试过0.0M而不是m(现在是我感到羞耻的时候了)嗯,m也应该工作。也许你在尝试那一次时引入了一个拼写错误(没有比那些拼写错误更糟糕的了,那一次尝试实际上是正确的)。@CoffeeAddict-不是这样。从MSDN页面:
如果您希望将数字实数文字视为十进制,请使用后缀m或m
我编辑了您的标题,因为它根本不代表您的问题。
if (chargeAmount < 0.01M)
  throw new ArgumentOutOfRangeException("chargeAmount");