计算给定日期和月份的下一个营业日期

时间:2012-02-20 12:00:53

标签: c# asp.net datetime

我想计算给定月份和日期的下一个营业日期。

例如:

我会给月份'1月'和日期'1'。我想得到日期的结果是“Ddecember”和“31”(在下一年)。请帮我计算一下。

2 个答案:

答案 0 :(得分:4)

尝试:

var startDate = ...;
while (startDate.DayOfWeek == DayOfWeek.Saturday || startDate.DayOfWeek == DayOfWeek.Sunday)
    startDate = startDate.AddDays(1);

明年的上一个工作日:

var startDate = ...;
startDate = startDate.AddYears(1);
while (startDate.DayOfWeek == DayOfWeek.Saturday || startDate.DayOfWeek == DayOfWeek.Sunday)
    startDate = startDate.AddDays(-1);

答案 1 :(得分:3)

什么构成营业日?如果星期六/星期日有任何限制,您可以使用Calculate the number of business days between two dates?

等扩展方法

但是在大​​多数国家/地区,您也会忽略银行假期,这通常意味着您希望拥有这些假期的表格/列表,并确保您忽略它们。因此,您可以使用一种方法来评估这两种情况。

考虑您的规则,包括返回上一个工作日,而不是转发到下一个适用的工作日。获得规则集后,您可以定义用于评估候选工作日的功能,以及在天之间导航以找到正确的结果。