C#可以通过System.Globalization这个类来简单获取给定日期的周次, 也可以用取得12/31所在周次来计算当年总共有多少周.
using System.Globalization;
GregorianCalendar gc = new GregorianCalendar();
DateTime datetime = DateTime.Now;
int week = gc.GetWeekOfYear(datetime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
//DayOfWeek.Sunday 这个参数用来指定每周的第一天从周日算起. 这样就与MS SQL: datepart(week,getdate()) 取到的周次一致.