C# 中的日期计算[重复]

2024-02-18

在我的应用程序(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(使用前将#替换为@)

C# 中的日期计算[重复] 的相关文章

随机推荐