2014-03-27 58 views
0

如何在不計算小時積累的情況下獲得天差?下面是我的代碼,我已經試過:如何在不計算小時的情況下獲得天差?

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"; 
} 

例子: 從星期二9時23分37秒,我想要得到的結果是週三00:00:00是新的一天,而不是我必須等待24小時即星期三09:23:37。

我該怎麼辦?

+5

直接得到它不僅有'DateTime.Now,但DateTime.Today'返回在午夜的日期,因此不考慮時間。 –

+0

我編輯過你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –

回答

0

而不是從時間差獲取的天,更好地日期

var lastTime = new DateTime(2014,3,25); 
var daydifference = DateTime.Now.Date - lastTime.Date; 
相關問題