Как высчитать сколько дней от последней даты

  • Автор темы Автор темы russya
  • Дата начала Дата начала

russya

Client
Регистрация
08.07.2014
Сообщения
764
Реакции
90
Баллы
28
Народ помогите. У меня есть дата например 02.03.2015 , если прошло больше 30 дней, значит делать какие-то действия. Если не прошло, тогда ничего не делать. Как посчитать? мне нужно от сегодняшней даты отнять дату из переменной. Я уже голову сломал...помогите
 
C#:
Развернуть Свернуть Копировать
DateTime dt = DateTime.Parse("02.03.2015"); // Заданное время
DateTime now = DateTime.Now; // Текущее время
var days = (now - dt).Days; // Разница в днях (31)

if (days>30)
{
   return "Прошло больше 30 дней";
}
else
{
  return "Еще есть время";
}
 
  • Оценить
Реакции: russya
опередили.. :)
 
  • Оценить
Реакции: russya
C#:
Развернуть Свернуть Копировать
DateTime dt = DateTime.Parse("02.03.2015"); // Заданное время
DateTime now = DateTime.Now; // Текущее время
var days = (now - dt).Days; // Разница в днях (31)

if (days>30)
{
   return "Прошло больше 30 дней";
}
else
{
  return "Еще есть время";
}
Спасибо! а как вместо этого DateTime.Parse("02.03.2015"); вставить переменную data
 
  • Оценить
Реакции: Виктор П и russya
Друзья, а подскажите, как сделать проверку, на 12 часов например?
Все тоже самое, только, если прошло 12 часов, то работаем, если нет, то не трогаем и ждем
 
Друзья, а подскажите, как сделать проверку, на 12 часов например?
Все тоже самое, только, если прошло 12 часов, то работаем, если нет, то не трогаем и ждем
Код:
Развернуть Свернуть Копировать
DateTime dt = DateTime.Parse("14:00 02.11.2017"); // Заданное время
DateTime now = DateTime.Now; // Текущее время
TimeSpan diff = now - dt; // разница
var Hours = Math.Floor(diff.TotalHours); // переводим разницу в округленные часы

if (Hours>12)
{
   return "Прошло больше 12 часов (прошло " + Hours + " часов)";
}
else
{
  return "Еще есть время (прошло " + Hours + " часов)";
}
 
  • Оценить
Реакции: AgentRassilok
DateTime.Parse(project.Variables["Переменная1"]);
Подскажите пожалуйста, почему не срабатывает?
Код:
Развернуть Свернуть Копировать
DateTime.Parse(project.Variables["Limit"]); // Заданное время
DateTime now = DateTime.Now; // Текущее время
TimeSpan diff = now - dt; // разница
var Hours = Math.Floor(diff.TotalHours); // переводим разницу в округленные часы

if (Hours>12)
{
   return "Прошло больше 12 часов (прошло " + Hours + " часов)";
}
else
{
  return "Еще есть время (прошло " + Hours + " часов)";
}
 
не срабатывает скорее всего из-за отсутствия объявления переменной dt в первой строке твоего кода:
Код:
Развернуть Свернуть Копировать
DateTime dt = DateTime.Parse(project.Variables["Limit"]); // Заданное время
 
  • Оценить
Реакции: vasyaya
А как от первой даты отнять другую и получить разницу..?

Например:

Первая дата {-TimeNow.Date[dd-MM-yyyy]} → [30-09-2018]

Вторая дата {-TimeNow.Date[dd-MM-yyyy]-} → [30-10-2018]

Я хочу видеть в итоге текст → "Статистика за 30 дней" ..? ну или просто → "30" текст сам добавлю...?
 
Всем привет тоже столкнулся с проблемой определения даты.
Надо вычесть (отнять) от текущей даты некоторое количество дней.

Пример
Текущая дата (24.11.2018 ) - 45 дней = получаем (10.10.2018 )

На просторах Интернета нашел решение

Код:
Развернуть Свернуть Копировать
var dt = DateTime.Now.Subtract(new TimeSpan(45, 0, 0, 0));//Вычитаем три дня
return dt;
Где new TimeSpan(дни, часы, минуты, секунды)

Еще вариант
Код:
Развернуть Свернуть Копировать
DateTime d1 = DateTime.Parse(project.Variables["data1"].Value);
DateTime d2 = d1.AddDays(-45);
return d2;
 
интересно конечно, познавательно, но немного не то, проблемка актуальная(
Код:
Развернуть Свернуть Копировать
DateTime dt1, dt2;
TimeSpan delta;
dt1 = DateTime.Parse("30-09-2018");
dt2 = DateTime.Parse("30-10-2018");
delta = dt2 - dt1;
return delta.Days.ToString();
 

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