2014-01-04 7 views
-2

я не могу получить мой код, чтобы вычислить количество минут между 2 даты и времени полей:TimeSpan не показывая вверх

private void button4_Click(object sender, EventArgs e) 
{ 
    string startTime = "5/1/2008 1:00:00 PM"; 
    string endTime = "5/1/2008 3:00:00 PM"; 

    DateTime startTimeParse = 
     DateTime.Parse(startTime, CultureInfo.InvariantCulture); 
    DateTime endTimeParse = 
     DateTime.Parse(endTime, CultureInfo.InvariantCulture); 

    MessageBox.Show(startTime); 
    MessageBox.Show(endTime); 

    TimeSpan result = endTimeParse - startTimeParse; 
    int hours = result.Hours; 
    int minutes = result.Minutes; 
} 

В отладить результат просто 00:00:00

Если вы можете показать мне, как MessageBox.show разные в минутах?

+1

Работает отлично для меня. –

+0

Что значит «результат»? Каковы значения «часов» и «минут» в приведенном выше примере? – CodeCaster

+1

Я не вижу ничего плохого. 'Hours' будет равно 2, а' Minutes' будет '0'. –

ответ

2

Math между двумя DateTime значения дают значение TimeSpan. Таким образом, вы можете просто так:

(endTimeParse - startTimeParse).TotalMinutes; 
1

На основании последнего комментария, попробуйте:

MessageBox.Show(result.TotalMinutes.ToString()) 
+0

Согласен. Минуты будут 0, потому что это два часа и 0 минут. Всего минут не выполняется арифметика. –

Смежные вопросы