如何根据时间和工资计算价格计算

问题描述:

我想根据工资乘以小时计算出最终价格。如何根据时间和工资计算价格计算

这是我的代码 为什么如果时间是02:30:00和工资:14美元是我的总共2?

TimeSpan duration = TimeSpan.Parse("02:30:00"); 
int wage = 14; 
var result = (duration.Hours + (duration.Minutes/60) * wage); 
+1

请阅读[MCVE]关于发布代码的指导。我编辑了帖子的示例以显示一个选项 - 同时它清楚地表明完全不相关的[tag:model-view-controller]在帖子中根本没有被调用([tag:asp.net-mvc])稍微好一点,但不是真的需要)。 –

+1

备注:类似问题的标准重复之一 - http://*.com/questions/9288904/division-returns-zero回答你的问题。 –

首先,表达实际上评价为:

duration.Hours + ((duration.Minutes/60) * cleaner.Price) 

其次,你正在做的整数除法,所以30/60将导致0,让你具有值2即时间部分。

要解决这个问题,你可以像下面的东西:

(duration.Hours + ((decimal)duration.Minutes/60)) * 14; 

或者,你可以跳过此组件的方式计算,只需要使用TotalHours属性来代替:

duration.TotalHours * 14 
+0

完美的作品!谢谢! –