截止日期的提醒消息作为提醒

时间:2019-01-29 04:31:44

标签: c# wpf sql-server-2014

我有一个wpf(windows)应用程序 我有一个带有值StartDate,EndDate,ReminderDate的SQL Server数据表。 为此,我想在ReminderDate == Today时自动应用一个弹出消息框。 ReminderDate是EndaDate之前的15天。 我尝试了几种方法,但无法正确获取消息。

这是我尝试过的。

非常感谢任何样品。

 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 :(得分:0)

那是因为您正在使用System.DateTime.Now.Date。 请注意,expiryDate.Date可能不等于DateTime.Now.Date,因为时间可能会不同。

例如:

expiryDate.Date = 1/29/2019 01:24:36 AM

AND

DateTime.Now.Date = 1/29/2019 12:00:00 AM

答案 1 :(得分:0)

在不查看您的机器设置的情况下很难回答,但我怀疑您是美国文化或其他人。试试这个:

DateTime expiryDate = DateTime.ParseExact(reader["ReminderDate"], "dd/MM/yyyy", CultureInfo.InvariantCulture);