Ok, well you could try something like:
DateTime dtStart = new DateTime(2005, 1, 1);
DateTime dtEnd = new DateTime(2005, 1, 30);
DateTime dtCurrent = dtStart;
while (dtCurrent < dtEnd)
{
double dDays;
if (dtCurrent.DayOfWeek != DayOfWeek.Sunday)
dDays = 6.0 - (double)dtCurrent.DayOfWeek;
else if ((dtCurrent.Day + 6) <= dtEnd.Day)
dDays = 6.0;
else
dDays = dtEnd.Day - dtCurrent.Day;
Console.Write(dtCurrent + " - ");
DateTime dtEndOfWeek = dtCurrent.AddDays(dDays);
Console.WriteLine(dtEndOfWeek);
dtCurrent = dtEndOfWeek.AddDays(1.0);
}
David