C# 如何计算基于时间和工资的价格计算

C# 如何计算基于时间和工资的价格计算,c#,C#,我想根据工资乘以工时来计算出最终价格 这是我的密码 为什么如果工作时间是02:30:00,工资是14美元,那么我的总工资是2美元 TimeSpan duration = TimeSpan.Parse("02:30:00"); int wage = 14; var result = (duration.Hours + (duration.Minutes / 60) * wage); 首先,表达式实际计算为: duration.Hours + ((duration.Minutes / 60) *

我想根据工资乘以工时来计算出最终价格

这是我的密码 为什么如果工作时间是02:30:00,工资是14美元,那么我的总工资是2美元

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

首先,表达式实际计算为:

duration.Hours + ((duration.Minutes / 60) * cleaner.Price)
其次,您正在进行整数除法,因此30/60将得到0,留下值2,即小时数部分

要解决此问题,您可以执行以下操作:

(duration.Hours + ((decimal)duration.Minutes / 60)) * 14;
或者,您可以跳过此组件计算,只需使用
TotalHours
属性即可:

duration.TotalHours * 14

很好用!谢谢你!请阅读有关投寄代码的指南。我编辑了这篇文章的样本,展示了一个选项——同时,很明显,这篇文章根本不要求完全无关(可能更好一些,但不是真的需要)。旁注:类似问题的标准副本之一——回答了你的问题。