3 回答
![?](http://img1.sycdn.imooc.com/56fb3e3d0001a10301000100-100-100.jpg)
TA贡献1836条经验 获得超5个赞
第一个你计算所有的周末天数。然后,将结果添加到开始日期中。这是我的解决方案。希望能帮到你,朋友!
static IEnumerable<DateTime> GetDaysBetween(DateTime start, DateTime end)
{
for (DateTime i = start; i < end; i = i.AddDays(1))
{
yield return i;
}
}
DateTime startingDate = DateTime.Parse("07/25/2018");//TODO Insert variable from poted form
var numOfWeekends = GetDaysBetween(startingDate, startingDate.AddDays(7))
.Where(d => d.DayOfWeek == DayOfWeek.Saturday || d.DayOfWeek == DayOfWeek.Sunday).Count();
startingDate = startingDate.AddDays(numOfWeekends);
Console.WriteLine(startingDate);
![?](http://img1.sycdn.imooc.com/5458683f00017bab02200220-100-100.jpg)
TA贡献2019条经验 获得超9个赞
我并没有真正理解附加部分,但是此代码将为您提供一个没有任何星期日或星期六的列表:
DateTime startingDate = DateTime.Parse("07/25/2018");//TODO Insert variable from poted form
DateTime endingDate = DateTime.Parse("07/08/2018");//TODO Insert variable from posted form
List<DateTime> dates = new List<DateTime>();
for (DateTime dt = startingDate; dt <= endingDate; dt = dt.AddDays(1))
if (dt.DayOfWeek != DayOfWeek.Saturday && dt.DayOfWeek != DayOfWeek.Sunday)
dates.Add(dt);
如果需要,您还可以添加计数器:
DateTime startingDate = DateTime.Parse("07/25/2018");//TODO Insert variable from poted form
DateTime endingDate = DateTime.Parse("07/08/2018");//TODO Insert variable from posted form
List<DateTime> dates = new List<DateTime>();
int couter = 0;
for (DateTime dt = startingDate; dt <= endingDate; dt = dt.AddDays(1))
{
if (dt.DayOfWeek != DayOfWeek.Saturday && dt.DayOfWeek != DayOfWeek.Sunday)
dates.Add(dt);
else
counter++;
}
或者别的什么...
- 3 回答
- 0 关注
- 246 浏览
添加回答
举报