C# DayOfWeek Enum

DateTime type illustration

You want to determine if a certain date is a Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, or Sunday, using the C# programming language. The DayOfWeek property, and the DayOfWeek enum type, can be used for this purpose.

Example

To begin, we look at a program that acquires the current DayOfWeek. You can use either DateTime.Now or DateTime.Today to get the current day, and then you can take the DayOfWeek from that. Next, we show how you can test what day of the week was found using an if-expression. Finally, we print out all the values of the DayOfWeek enum for completeness.

Program that uses DayOfWeek enum [C#]

using System;

class Program
{
    static void Main()
    {
	// Get currrent day of week.
	DayOfWeek today = DateTime.Today.DayOfWeek;
	Console.WriteLine("Today is {0}",
	    today);

	// Test current day of week.
	if (today == DayOfWeek.Monday)
	{
	    Console.WriteLine("DO WORK");
	}

	// Demonstrate all DayOfWeek values.
	Console.WriteLine("{0}, {1}, {2}, {3}, {4}, {5}, {6}",
	    DayOfWeek.Monday,
	    DayOfWeek.Tuesday,
	    DayOfWeek.Wednesday,
	    DayOfWeek.Thursday,
	    DayOfWeek.Friday,
	    DayOfWeek.Saturday,
	    DayOfWeek.Sunday);
    }
}

Output

Today is Monday
DO WORK
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
If keyword

Selection statement on DayOfWeek. You can use an if-expression or a switch statement with the DayOfWeek enum. If you have to take different actions based on every day, you could use a switch statement and then execute different code as required. In the example output, the DO WORK line only appears if the program was run on a Monday.

Summary

The DayOfWeek enum provides a handy encoded type for representing the day of the week as a small value. This type can be used anywhere you must use the day of the week in your code, and is not tied to the DateTime type or the DayOfWeek property accessor.

DateTime Examples Time Representations
.NET