C6中VB6的WeekDay函数的等价性

RBS*_*RBS 6 c# vb6 datetime weekday dayofweek

在VB6代码中,我有以下内容:

dim I as Long 

I = Weekday(Now, vbFriday) 
Run Code Online (Sandbox Code Playgroud)

我想要C#中的等价物.任何人都可以帮忙吗?

Lep*_*R64 12

public static int Weekday(DateTime dt, DayOfWeek startOfWeek)
{
    return (dt.DayOfWeek - startOfWeek + 7) % 7;
}
Run Code Online (Sandbox Code Playgroud)

这可以通过以下方式调用:

DateTime dt = DateTime.Now;
Console.WriteLine(Weekday(dt, DayOfWeek.Friday));
Run Code Online (Sandbox Code Playgroud)

以上输出:

4
Run Code Online (Sandbox Code Playgroud)

星期二是星期五之后的4天.

  • VB6(和VB.NET)函数的返回值是1.`return((dt.DayOfWeek - startOfWeek + 7)%7)+ 1;` (4认同)