如何在不计算小时累积的情况下获得天数差异?以下是我尝试过的代码:
TimeSpan timeDifferenceLogin = (DateTime.Now).Subtract(lastTime);
int dTimeDifferenceLogin = timeDifferenceLogin.Days;
if (dTimeDifferenceLogin > 1)
{
//MessageBox.Show("checkin_dayout");
Out_Time.Text = "--:--";
In_Time.Text = "--:--";
btn_checkIn.Visibility = Visibility.Visible;
btn_checkOut.Visibility = Visibility.Hidden;
txtMessage.Text = "";
}
else if (dTimeDifferenceLogin < 1 && lastType == "out")
{
//MessageBox.Show("checkout");
DateTime lastInTime = absenList[lastData - 2].Time;
In_Time.Text = lastInTime.ToString("HH:mm");
Out_Time.Text = lastTime.ToString("HH:mm");
btn_checkIn.Visibility = Visibility.Hidden;
btn_checkOut.Visibility = Visibility.Hidden;
txtMessage.Text = "See u tomorrow :D";
}
示例: 从星期二09:23:37,我想得到的结果是星期三00:00:00是新的一天而不是我必须等待24小时,即星期三09:23:37。
我该怎么办?
答案 0 :(得分:0)
而不是从时差中得到日子,最好直接从日期开始
var lastTime = new DateTime(2014,3,25);
var daydifference = DateTime.Now.Date - lastTime.Date;