在我的应用程序(c#)中我需要添加n
距离今天的日期还有几天。我知道我可以使用DateTime.AddDays(n)
方法,而且这个方法效果很好。但在我的情况下,我只想添加工作日(或仅添加“星期一”和“星期五”或任何其他集合)。
也许存在任何默认方法来计算此类逻辑。
测试数据:
日期:今天(2014 年 6 月 24 日)。
添加天数:10
日期类型:工作日(周一至周五)
答复:2014 年 7 月 8 日
您可以使用 LINQ:
DayOfWeek[] weekEnd = { DayOfWeek.Saturday, DayOfWeek.Sunday };
DateTime end = Enumerable.Range(0, int.MaxValue)
.Select(i => DateTime.Today.AddDays(i))
.Where(d => !weekEnd.Contains(d.DayOfWeek))
.Take(10)
.Last();
但是,我假设它返回 07/07,因为它包括今天。不知道是否如愿。如果您不想包含今天的更改Range(0, int.MaxValue)
to Range(1, int.MaxValue)
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)