Fan.Sys.DateTime.weekOfYear C# (CSharp) Method

weekOfYear() static private method

static private weekOfYear ( int year, int month, int day, Weekday startOfWeek ) : int
year int
month int
day int
startOfWeek Weekday
return int
        internal static int weekOfYear(int year, int month, int day, Weekday startOfWeek)
        {
            int firstWeekday = DateTime.firstWeekday(year, 0); // zero based
              int lastDayInFirstWeek = 7 - (firstWeekday - startOfWeek.ord);

              // special case for first week
              if (month == 0 && day <= lastDayInFirstWeek) return 1;

              // compute from dayOfYear - lastDayInFirstWeek
              int doy = dayOfYear(year, month, day) + 1;
              int woy = (doy - lastDayInFirstWeek - 1) / 7;
              return woy + 2; // add first week and make one based
        }

Same methods

DateTime::weekOfYear ( ) : long
DateTime::weekOfYear ( Weekday startOfWeek ) : long

Usage Example

Example #1
0
 public long weekOfYear(Weekday startOfWeek)
 {
     return(DateTime.weekOfYear(getYear(), month().ord, getDay(), startOfWeek));
 }