Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

ProjectRecurrenceRule

Namespace OfficeIMO.Project
Assembly OfficeIMO.Project
Modifiers sealed

Finite Gregorian recurrence input. Expansion retains local wall time, skips nonexistent month days, and never reads a native Project recurrence rule. Working calendars are applied later by scheduling.

Inheritance

  • Object
  • ProjectRecurrenceRule

Constructors

Methods

public IReadOnlyList<DateTime> Expand(Int32 maxCalendarDays = 36600, CancellationToken cancellationToken = default) #
Returns: IReadOnlyList<DateTime>

Expands completely or fails without a partial result. MaxCalendarDays bounds the search, including dates skipped by the pattern.

Parameters

maxCalendarDays System.Int32 = 36600 optionalposition: 0
cancellationToken System.Threading.CancellationToken = default optionalposition: 1

Properties

public DateTime Start { get; set; } #

First eligible local date and time; its period anchors the interval.

public ProjectRecurrenceFrequency Frequency { get; set; } #

Daily, weekly, monthly or yearly pattern.

public Int32 Interval { get; set; } #

Positive period stride.

public Int32 Count { get; set; } #

Required finite number of occurrences, from 1 through 100000.

public IList<DayOfWeek> DaysOfWeek { get; } #

Weekly selections. Empty selects Start's weekday. Other frequencies require an empty list.

public DayOfWeek FirstDayOfWeek { get; set; } #

Weekly period boundary, Monday by default.

public Nullable<Int32> DayOfMonth { get; set; } #

Monthly/yearly day number. Null uses Start's day when no ordinal weekday is selected.

public Nullable<Int32> Month { get; set; } #

Yearly month number. Null uses Start's month.

public Nullable<DayOfWeek> WeekDay { get; set; } #

Monthly/yearly ordinal weekday, used together with WeekOrdinal.

public Nullable<Int32> WeekOrdinal { get; set; } #

1 through 5 or -1 for the last matching weekday. Missing fifth weekdays are skipped.