Ответ 1
Простой:
- Миллисекунды - это оставшиеся миллисекунды, которые не образуют целую секунду.
- TotalMilliseconds - это полная продолжительность времени, выраженная в миллисекундах.
В приведенном ниже примере, почему свойство Milliseconds возвращает 0, а свойство TotalMilliseconds возвращает 5000
// 5 seconds
TimeSpan intervalTimespan = new TimeSpan(0, 0, 5);
// returns 0
intervalTimespan.Milliseconds;
// returns 5000.0
intervalTimespan.TotalMilliseconds
Простой:
Поскольку Milliseconds
возвращает часть Milliseconds, а TotalMilliseconds возвращает полные миллисекунды, представленные Timespan
Пример: 0: 00: 05.047
Миллисекунды: 47
Всего миллисекунд: 5047
Это происходит потому, что intervalTimespan.Milliseconds; возвращает milisecond компонент времени. В вашем временном конструкторе у вас есть только час минута и второй компонент, поэтому результат равен 0. intervalTimespan.TotalMilliseconds - Это дает вам полные промежутки времени. Пример:
// 5 miliseconds
TimeSpan intervalTimespan = new TimeSpan(0, 0,0,0,5);
// returns 5
intervalTimespan.Milliseconds;
// returns 5
intervalTimespan.TotalMilliseconds
Очевидно, Miliseconds
возвращает только часть milisenconds вашего TimeSpan
, а TotalMiliseconds
вычисляет, сколько миллисекунд во времени представлено TimeSpan
.
В вашем случае сначала возвращается 0
, потому что у вас ровно 5 секунд, второй возвращает 5000
, потому что 5s == 5000ms
TimeSpan имеет другие перегрузки
TimeSpan(hour, minute, seconds)
TimeSpan(days, hour, minute, seconds)
TimeSpan(days, hour, minute, seconds, milliseconds)
Свойство Milliseconds вернет фактическое значение в миллисекундах
TotalMilliseconds возвращает миллисекунды, включая дни, час, минуту и секунды.