LockedDate のリストがあるとします。
LockedDate には DateTime と IsYearly ブール値があります。IsYearly が true の場合は、任意の年になる可能性があるため、その年は考慮されません。時間は決して考慮されるべきではありません。
例: X-Mas、12 月 25 日は毎年です。
これで LockedDate のリストができました。
重複はありません。
今、私はこの機能が必要です:
この関数は次のことを行います: LockedDate が年次ではなく、日、月、および年がソースからの範囲内にある場合は、戻りリストに追加します。
LockedDate が年単位で、その月/日が範囲内にある場合は、範囲内の年ごとに新しい日付を追加します。
IsYearly が true の Dec 25 があるとします。私の範囲は 2013 年 1 月 22 日から 2015 年 2 月 23 日までです。2013 年 12 月 25 日を新しい日付として、2014 年 12 月 25 日を新しい日付としてリストに追加する必要があります。
List<Date> GetDateRange(List<LockedDate> source, DateTime start, DateTime end)
{
}
ありがとう
Dec 25 Yearly -> Dec 25 2013, Dec 25 2014
Dec 2, 2011 NOT Yearly -> Nothing
March 25, 2013 => March 25 2013