Помогите доработать C#

Регистрация
17.12.2020
Сообщения
36
Благодарностей
11
Баллы
8
Собственно есть вот такой C#
Нашел в одном обсуждение, автор - orka13


C#:
DateTime dt = DateTime.Parse("14:00 26.01.2022"); // Заданное время
DateTime now = DateTime.Now; // Текущее время
TimeSpan diff = now - dt; // разница
var Hours = Math.Floor(diff.TotalHours); // переводим разницу в округленные часы

if (Hours>3)
{
   return "Прошло больше 3 часов (прошло " + Hours + " часов)";
}
else
{
  return "Прошло меньше " + Hours + " часов";
}

Берет заданную дату и высчитывает от ткущей даты. Если прошло больше 3х часов, проект идет дальше, меньше 3х часов, ждет...
Проблема в том что C# округливает время после того как отнял разницу. То есть если получится что прошло уже 3:45 он все равно говорит что прошло только 3 часа, и когда он высчитает к примеру 4:01, только тогда будет считаться что прошло уже 3 часа.
А мне надо что бы проект уже начинал работать когда поймет что прошло 3 часа, а не 4.

Кто шарит в С#. Помогите пожалуйста
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 690
Баллы
113
тоесть 3.1 часа и 3.9 часа это всегда прошло 3 часа ?

if (Hours>=3) так будет срабатывать на 3.000001 час
 
  • Спасибо
Реакции: Джек Воробей
Регистрация
17.12.2020
Сообщения
36
Благодарностей
11
Баллы
8
Регистрация
17.12.2020
Сообщения
36
Благодарностей
11
Баллы
8

Koqpe

Client
Регистрация
23.12.2014
Сообщения
1 100
Благодарностей
649
Баллы
113
  • Спасибо
Реакции: Джек Воробей
Регистрация
17.12.2020
Сообщения
36
Благодарностей
11
Баллы
8
Регистрация
17.12.2020
Сообщения
36
Благодарностей
11
Баллы
8
Разобрался, оставлю тут, может кому поможет

C#:
DateTime dt = DateTime.Parse(project.Variables["имя переменной"].Value); // Заданное время
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)