Check if dateTime is a weekend or a weekday

Solution 1:

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");
}

Solution 2:

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))

Solution 3:

if ((day >= DayOfWeek.Monday) && (day<= DayOfWeek.Friday))
{
    // action
}

Solution 4:

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");
        }
    }
}