DayOfWeek
7 days are in each week. In C# programs we can determine if a certain date is a Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, or Sunday.
The DayOfWeek
property, and the DayOfWeek
enum
type, can be used for this purpose. These 2 types have the same name, but are different (and often used together).
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.
DayOfWeek
from the DateTime
instance. DayOfWeek
is a property, and also an enum
type.switch
on a DayOfWeek
. We test what day of the week was found using an if
-expression.Console.WriteLine
) all the values of the DayOfWeek
enum
for completeness.using System; class Program { static void Main() { // Get current 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); } }Today is Monday DO WORK Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
We can use DayOfWeek
in collections like a list. We do not need to use the DayOfWeek
property in the same program as the DayOfWeek
enum
.
DayOfWeek
enum
to represent work days in a List
. We then loop over and print the day names.using System; using System.Collections.Generic; class Program { static void Main() { // Use a DayOfWeek list. List<DayOfWeek> workDays = new List<DayOfWeek>(); workDays.Add(DayOfWeek.Monday); workDays.Add(DayOfWeek.Wednesday); // Loop over list of days. foreach (var day in workDays) { Console.WriteLine($"WORK DAY: {day}"); } } }WORK DAY: Monday WORK DAY: Wednesday
The DayOfWeek
enum
is a convenient type for representing the day of the week as a small value. This type can be used anywhere.