BB.Caching.Redis.Analytics.BitwiseAnalytics.DateTimeUtil.WeekNumber C# (CSharp) Method

WeekNumber() private method

private WeekNumber ( System.DateTime dateTime, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday ) : string
dateTime System.DateTime
firstDayOfWeek DayOfWeek
return string
            public static string WeekNumber(DateTime dateTime, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday)
            {
                string weekFormat;
                if (firstDayOfWeek == DayOfWeek.Sunday)
                {
                    weekFormat = "0";
                }
                else if (firstDayOfWeek == DayOfWeek.Monday)
                {
                    weekFormat = "1";
                }
                else
                {
                    throw new Exception(string.Format("invalid weekday supplied {0}", firstDayOfWeek));
                }

                // ReSharper disable once PossibleNullReferenceException
                int weekNumber = DateTimeFormatInfo.CurrentInfo.Calendar.GetWeekOfYear(
                    dateTime,
                    CalendarWeekRule.FirstDay,
                    firstDayOfWeek);

                string formatted = string.Format("{0:yyyy}W{1}{2}", dateTime, weekFormat, weekNumber.ToString("D2"));
                return formatted;
            }