首页 > 解决方案 > 如何验证输入时间是否在asp.net C#中的给定时间范围内?

问题描述

我的时间范围是 08:00 AM 到 03:00 PM。

如果所选输入时间不在此范围内,则应抛出错误消息。

这个怎么做?有人可以帮帮我吗?

   protected void txtTimeIn_TextChanged(object sender, EventArgs e)
    {

        DateTime time = Convert.ToDateTime(txtTimeIn.Text);

        TimeSpan start = new TimeSpan(8, 0, 0);

        TimeSpan end = new TimeSpan(15, 0, 0);

        TimeSpan now = new TimeSpan(time.Ticks);

        if ((now > start) && (now < end))

        {


            lblIN.Visible = false;
        }
        else
        {
            lblIN.Visible = true;

        }
    }

当我选择错误的时间显示标签时,但是一旦我更改并选择正确的时间,标签就不会消失。

标签: c#asp.net

解决方案


public void Page_Load(object sender, EventArgs e)
    {
        TimeSpan startTime = new TimeSpan(8, 0, 0);  // 8 AM
        TimeSpan endTime = new TimeSpan(15, 0, 0);  // 3 PM

        if (DateTime.Now.TimeOfDay > startTime && DateTime.Now.TimeOfDay < endTime)
        {
            // Execute logic
        }

    }

这是检查当前日期时间的快速简便的解决方案。显然你说你有一个“选定的日期”,但我没有看到任何地方,所以如果需要,只需将其转换为 DateTime。


推荐阅读