计算出勤总小时数

时间:2013-09-15 11:58:15

标签: c# asp.net sql vb.net

在asp.net上工作考勤系统,我有两个标签和文本框:

  1. 用于时间输入的Textbox1。
  2. 用于请假的文本框。
  3. 两者均由用户输入,例如:进入时间为:(上午7:50),休假时间为:(下午6:15)。 现在我想计算输入条目的总小时数。 在他/她休息30分钟的那一天记住。那怎么办?

1 个答案:

答案 0 :(得分:2)

  1. TextBox1.Text转换为System.DateTime entry
  2. TextBox2.Text转换为System.DateTime leave
  3. 计算Timespan t = leave - entry - Timespan.FromMinutes(30)
  4. 获取t.TotalHours()
  5. 将时间字符串转换为DateTime使用DateTime.ParseExactWhy can’t DateTime.ParseExact() parse the AM/PM in “4/4/2010 4:20:00 PM” using “M'/'d'/'yyyy H':'mm':'ss' 'tt”

        var ci = new CultureInfo("en-US");
    
        DateTime entry = DateTime.ParseExact("7:50 AM", "h:mm tt", ci);
        DateTime leave = DateTime.ParseExact("6:15 PM", "h:mm tt", ci);
    
        TimeSpan t = leave - entry - TimeSpan.FromMinutes(30);
    
        var totalTime = string.Format("{0:D2}h:{1:D2}m", t.Hours, t.Minutes);