C# 寻找相当于 DayOfWeek.Tuesday

问题描述

我想将现有内容中的一个条件更改为更灵活和更努力。:

原来的样子:

if (object.dayofweek == DayOfWeek.Tuesday)
{
}

我的第一种方法是用一个整数替换星期二,但是这失败了。 然后我尝试使用:

if (object.dayofweek == Enum.GetName(typeof(DayOfWeek),2))
{
}

不起作用。

任何提示,我如何用变量替换固定日期? 谢谢!

解决方法

您需要一种方法来获取一周中的当前日期。这可以用

DateTime.Today.DayOfWeek

如果您正在使用它,那么您可以继续使用 DayOfWeek.Tuesday,如下所示:

if (DateTime.Today.DayOfWeek == DayOfWeek.Tuesday)

如果您想知道如何将枚举更改为变量,请使用 (int)DayOfWeek.Tuesday

,

(DayOfWeek)myInteger – Klaus Gütter

这是解决方案,一个简单的类型转换。

所以结果是:

if (DateTime.Today.DayOfWeek == (DayOfWeek)2) // for instance in case of Tuesday