Ho seguente codice per ottenere il weeknumber del dato anno nel tempo oggetto DateTimesettimana dell'anno C# Datetime
public static int WeeksInYear(DateTime date)
{
GregorianCalendar cal = new GregorianCalendar(GregorianCalendarTypes.Localized);
return cal.GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
}
Ora io do la funzione wich data 1/1/2012 deve restituire settimana 1, ma hes che ritorna la settimana 52. E non riesco a capire perché. Qualcuno ha un'idea del perché?
prova con questo 'cal.GetWeekOfYear (data, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday)' – Raghuveer
@RaghuveerGuthikonda: Che sarebbe lavorare solo in questo caso particolare. Per esempio. L'1/1/2013 potrebbe essere un sabato, non funzionerà. È solo il modo in cui vengono calcolate le settimane di calendario. L'1/1/2012 è nella settimana 52 e dovrebbe essere lì. – basti