不能将operator *应用于decimal和double类型的操作数

时间:2013-04-11 08:15:11

标签: c#

您好我需要对产品申请5.2%的折扣。我尝试过这样的事情:

decimal BasePrice {get;set;}
decimal Discount = (BasePrice * 5.2) / 100;

但Visual Studio告诉我它:

  

不能将运算符'*'应用于十进制和双精度类型的操作数

如果是这样我怎么能代表这个折扣呢?

1 个答案:

答案 0 :(得分:12)

使用

decimal Discount = (BasePrice * 5.2m) / 100;

否则,5.2将被视为双倍。

来自MSDN

  

如果要将数字实数文字视为十进制,请使用后缀m或M