Оповещение на срок в качестве напоминания - PullRequest
0 голосов
/ 29 января 2019

У меня есть приложение wpf (windows) И у меня есть таблица данных сервера sql со значениями StartDate, EndDate, ReminderDate.Для этого я хочу применить всплывающее окно сообщения автоматически, когда ReminderDate == Сегодня.ReminderDate за 15 дней до EndaDate.Я пробовал несколько методов, но не смог правильно получить сообщение.

Это я попробовал.

Любые образцы очень ценятся.

 string todayDate = DateTime.Now.ToString("dd/MM/yyyy");
 string reminderDate = DateTime.Now.AddDays(15).ToString();

        string date2 = reader["ReminderDate"].ToString();
        string regNo = reader["RegistrationNo"].ToString();

        DateTime expiryDate = Convert.ToDateTime(reader["ReminderDate"]);

        if (expiryDate.Date == DateTime.Now.Date)
        {
            MessageBox.Show("Renew Revenue / Insurance", "Renew Alert", MessageBoxButton.OK, MessageBoxImage.Warning);
       }
        else if (expiryDate.Date == DateTime.Now.AddDays(15))
        {
            MessageBox.Show(" Revenue Insurance Due in 15 Days ", "Renew", MessageBoxButton.OK, MessageBoxImage.Warning);
       }

Ответы [ 2 ]

0 голосов
/ 29 января 2019

Сложно ответить, не видя настроек своего компьютера, но я подозреваю, что вы придерживаетесь американской культуры или чего-то подобного.Попробуйте это:

DateTime expiryDate = DateTime.ParseExact(reader["ReminderDate"], "dd/MM/yyyy", CultureInfo.InvariantCulture);
0 голосов
/ 29 января 2019

Это потому, что вы используете System.DateTime.Now.Date.Обратите внимание, что expiryDate.Date может не совпадать с DateTime.Now.Date, поскольку время может отличаться.

Например:

expiryDate.Date = 29.01.2009 01:24:36 AM

И

DateTime.Now.Date = 29.01.2009 12:00:00

...