Check if dateTime is a weekend or a weekday

前端 未结 6 1917
日久生厌
日久生厌 2021-02-03 20:48


        
相关标签:
6条回答
  • 2021-02-03 21:01

    You need to put your asp controls inside form tag with runat="server".

    <body>
        <form id="frm" runat="server">
        <p>
        Today's date is: <asp:Label ID="dateToday" runat="server" />
        <br/>
        The day of the week is: <asp:Label ID="dayToday" runat="server" />
        <br/>
        </form>
    </body>
    

    Signature of Page_Load method is incorrect in your code. Also you should use Response.Write for asp websites instead of Console.Writeline. There should be OR(||) instead of AND(&&) when you are checking for the day of the week.

     <script language="c#" runat="server">
                protected void Page_Load(object sender, EventArgs e)
                {
                    DateTime date = DateTime.Now;
                    dateToday.Text = " " + date.ToString("d");
                    DayOfWeek day = DateTime.Now.DayOfWeek;
                    dayToday.Text = " " + day.ToString();
    
                    if ((dayToday.Text == DayOfWeek.Saturday.ToString()) || (dayToday.Text == DayOfWeek.Sunday.ToString()))
                    {
                        Response.Write("This is a weekend");
                    }
                }
            </script>
    
    0 讨论(0)
  • 2021-02-03 21:04

    You are comparing your ASP.NET label dayToday against an enumeration element of DayOfWeek which of course fails

    Probably you want to replace dayToday with day in your if statement, i.e. from

    if ((dayToday == DayOfWeek.Saturday) && (dayToday == DayOfWeek.Sunday))
    

    to

    if ((day == DayOfWeek.Saturday) && (day == DayOfWeek.Sunday))
    

    In addition, you probably also want to replace the logical 'and' (&&) with a logical 'or' (||) to finally

    if ((day == DayOfWeek.Saturday) || (day == DayOfWeek.Sunday))
    
    0 讨论(0)
  • 2021-02-03 21:04
            List<DateTime> datelist = new List<DateTime>();
    
            int balanceday = 1;
            while (datelist.Count < 10)
            {
                DateTime day = DateTime.Now.AddDays(balanceday + datelist.Count).Date;
                if (day.DayOfWeek != DayOfWeek.Saturday && day.DayOfWeek != DayOfWeek.Sunday)
                {
                    datelist.Add(day);
                }
                else
                {
                    balanceday++;
                }
            }
    
    0 讨论(0)
  • 2021-02-03 21:16

    You wrote wrong varable in the following if statement:

    if ((dayToday == DayOfWeek.Saturday) || (dayToday == DayOfWeek.Sunday))
    {
        Console.WriteLine("This is a weekend");
    }
    

    instead of dayToday you must use day varable in the condition.

    UPDATE: Also you made mistake in condition. There must be or instead of and.

    Correct code is

    if ((day == DayOfWeek.Saturday) || (day == DayOfWeek.Sunday))
    {
        Console.WriteLine("This is a weekend");
    }
    
    0 讨论(0)
  • 2021-02-03 21:16
    if ((day >= DayOfWeek.Monday) && (day<= DayOfWeek.Friday))
    {
        // action
    }
    
    0 讨论(0)
  • 2021-02-03 21:24

    You are receiving an error because you are comparing an enum with a string.

    // dayToday is a string
    // DayOfWeek.Saturday is an enum
    if ((dayToday == DayOfWeek.Saturday) && (dayToday == DayOfWeek.Sunday))
    

    Use DayOfWeek.Saturday.ToString() to compare against a string. You will also want not to pad the dayToday string. Alternatively, use the day variable to compare against an enum.

    https://dotnetfiddle.net/gUGJ0J

    using System;
    
    public class Program
    {
        public static void Main()
        {
            DateTime date = DateTime.Now;
    
            string dateToday = date.ToString("d");
            DayOfWeek day = DateTime.Now.DayOfWeek;
            string dayToday = day.ToString();
    
            // compare enums
            if ((day == DayOfWeek.Saturday) || (day == DayOfWeek.Sunday))
            {
                Console.WriteLine(dateToday + " is a weekend");
            }
            else
            {
                Console.WriteLine(dateToday + " is not a weekend");
            }
    
            // compare strings
            if ((dayToday == DayOfWeek.Saturday.ToString()) || (dayToday == DayOfWeek.Sunday.ToString()))
            {
                Console.WriteLine(dateToday + " is a weekend");
            }
            else
            {
                Console.WriteLine(dateToday + " is not a weekend");
            }
        }
    }
    
    0 讨论(0)
提交回复
热议问题