//目标日期
DateTime dt = DateTime.Now;
//该年1月1日所在的周,定义为第一周,sunday为0,monday为1
DateTime dtFirst = new DateTime(dt.Year, 1, 1);
//目标日期距离第一天的天数
int daysCount = Convert.ToInt32((dt - dtFirst).TotalDays);
//将第一天的日期补齐
daysCount += Convert.ToInt32(dtFirst.DayOfWeek);
//目标日期所在的周
int weeksCount = daysCount / 7;
//目标日期所在的天
int dayIdx = Convert.ToInt32(dt.DayOfWeek);
//显示结果
Console.WriteLine("日期" + dt.ToShortDateString() + "是第" + (weeksCount + 1).ToString() + "周的第" + dayIdx.ToString() + "天。");