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

嗨,我需要在产品上申请5.2%的折扣。我尝试过这样的事情:

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

但Visual Studio告诉我它:

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

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

使用

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

否则, 5.2将被视为双精度。

来自MSDN :

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