public int TotalWeeks(DateTime AStart, DateTime AEnd, DayOfWeek vWeek)
{
TimeSpan vTimeSpan = new TimeSpan(AEnd.Ticks - AStart.Ticks);
int totalDays = (int)vTimeSpan.TotalDays + 1;
int Result = totalDays / 7; // 共几周
for (int i = 0; i < totalDays%7; i++) // 是否在剩余的日期里出现
{
if (AEnd.AddDays(-i).DayOfWeek == vWeek)
{
return Result + 1;
}
}
return Result;
}
protected void Button_Click(object sender, EventArgs e)
{
DateTime vStart = DateTime.Parse("2009-09-01");
DateTime vEnd = DateTime.Parse("2009-09-15");
Label1.Text = TotalWeeks(vStart, vEnd, DayOfWeek.Sunday).ToString();
}