提醒时间&日期匹配
本文关键字:日期 时间 | 更新日期: 2023-09-27 17:50:37
我正在创建一个提醒来匹配用户输入的日期和时间。我可以通过使用Timer
和ScriptManager
获得当前日期和时间。但是我不知道如何将日期和时间与用户输入进行比较,并在匹配后使下面的标签可见。什么好主意吗?
public partial class Reminder : System.Web.UI.Page
{
private void UpdateTimer()
{
LabelCurrentTime.Text = System.DateTime.Now.ToLongTimeString();
}
protected void Timer1_Tick(object sender, EventArgs e)
{
UpdateTimer();
}
protected void Button1_Click(object sender, EventArgs e)
{
string currentdate = LabelCurrentDate.Text;
string currenttime = LabelCurrentTime.Text;
string reminderdate = TextBoxReminderDate.Text;
string remindertime = TextBoxReminderTime.Text;
Timer1.Enabled = true;
LabelCurrentTime.Text = System.DateTime.Now.ToLongTimeString();
LabelCurrentDate.Text = System.DateTime.Now.Date.ToShortDateString();
if (currentdate == reminderdate)
{
if (currenttime == remindertime)
{
Label1.Visible = true;
}
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Timer1.Enabled = false;
}
}
下面是截图:截图
您正在尝试将日期作为字符串处理。你不应该那样做。
首先,您不应该接受来自Textbox
的日期作为用户输入。有一个特定的DateTimePicker
控件专门用于让用户选择日期。你应该用它
如果您使用日期选择器为用户提供日期,那么您可以使用DateTime.Now
获得当前日期。现在有了两个实际日期,可以使用>
运算符对它们进行比较。
像这样解析日期和时间:
var dt = DateTime.Parse(currentDate+" "+currentTime);
var dt2 = DateTime.Parse(reminderDate+" "+reminderTime);
然后使用DateTime。方法来比较DateTime对象。
考虑以下内容:
var val = DateTime.Compare(dt,dt2);
如果val为0,则日期和时间相同。