在asp.net上工作考勤系统,我有两个标签和文本框:
两者均由用户输入,例如:进入时间为:(上午7:50),休假时间为:(下午6:15)。 现在我想计算输入条目的总小时数。 在他/她休息30分钟的那一天记住。那怎么办?
答案 0 :(得分:2)
TextBox1.Text
转换为System.DateTime entry
TextBox2.Text
转换为System.DateTime leave
Timespan t = leave - entry - Timespan.FromMinutes(30)
t.TotalHours()
将时间字符串转换为DateTime
使用DateTime.ParseExact
(Why 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);