Meziantou.Framework.Scheduling
2.0.12
Prefix Reserved
See the version list below for details.
dotnet add package Meziantou.Framework.Scheduling --version 2.0.12
NuGet\Install-Package Meziantou.Framework.Scheduling -Version 2.0.12
<PackageReference Include="Meziantou.Framework.Scheduling" Version="2.0.12" />
<PackageVersion Include="Meziantou.Framework.Scheduling" Version="2.0.12" />
<PackageReference Include="Meziantou.Framework.Scheduling" />
paket add Meziantou.Framework.Scheduling --version 2.0.12
#r "nuget: Meziantou.Framework.Scheduling, 2.0.12"
#:package Meziantou.Framework.Scheduling@2.0.12
#addin nuget:?package=Meziantou.Framework.Scheduling&version=2.0.12
#tool nuget:?package=Meziantou.Framework.Scheduling&version=2.0.12
Meziantou.Framework.Scheduling
This package supports 2 schedule formats:
- Recurrence rules (RRULE) as defined in RFC5545 and RFC2445
- Cron expressions
Recurrence rules (RRULE)
Parse recurrence rules:
var rrule = "FREQ=DAILY;UNTIL=20000131T140000Z;BYMONTH=1";
if (RecurrenceRule.TryParse(rrule, out var rule, out var error))
{
var nextOccurrences = rule.GetNextOccurrences(DateTime.Now).Take(50).ToArray();
}
Convert a recurrence rule to human-readable text:
var culture = CultureInfo.GetCultureInfo("en-US");
RecurrenceRule.Parse("FREQ=DAILY").GetHumanText(culture); // every day
RecurrenceRule.Parse("FREQ=WEEKLY;INTERVAL=3;BYDAY=TU;UNTIL=20150101").GetHumanText(culture); // every 3 weeks on Tuesday until January 1, 2015
Supported languages for human-readable text:
- English (
en,en-*, and invariant culture) - French (
fr,fr-*)
Cron expressions
The library also provides CronExpression to parse and evaluate cron schedules.
var cron = CronExpression.Parse("0 */15 * * * *");
var occurrences = cron.GetNextOccurrences(DateTime.Now).Take(10).ToArray();
Supported formats
- 5 fields:
minute hour day-of-month month day-of-week - 6 fields:
second minute hour day-of-month month day-of-week - 7 fields:
second minute hour day-of-month month day-of-week year
When using the 5-field format, seconds are implicitly set to 0.
Field ranges
- second:
0-59 - minute:
0-59 - hour:
0-23 - day-of-month:
1-31 - month:
1-12orJAN-DEC - day-of-week:
0-6orSUN-SAT(0= Sunday) - year (optional):
1970-2099
Operators and special values
For all fields:
*or?: any valuea,b,c: lista-b: range*/n: step from field minimuma-b/n: stepped rangea/n: step starting ata
Day-of-month field additionally supports:
L: last day of monthL-n: nth day before end of month (for exampleL-2)LW: last weekday of monthnW: nearest weekday to dayn
Day-of-week field additionally supports:
nL: last occurrence of weekdaynin monthn#m: m-th occurrence of weekdaynin month (min1-5)
Predefined schedules
@yearly/@annually@monthly@weekly@daily/@midnight@hourly
Notes
- Parsing is case-insensitive for month/day names and predefined schedules.
day-of-monthandday-of-weekare combined with AND semantics. A date must satisfy both fields to match.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
-
net9.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Meziantou.Framework.Scheduling:
| Package | Downloads |
|---|---|
|
Immediate.Jobs
A reflection-free background job scheduler for .NET using source generation. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.1.3 | 608 | 9/20/2026 |
| 4.1.2 | 228 | 9/15/2026 |
| 4.1.1 | 392 | 9/6/2026 |
| 4.1.0 | 120 | 9/4/2026 |
| 4.0.5 | 118 | 9/3/2026 |
| 4.0.4 | 96 | 9/3/2026 |
| 4.0.3 | 148 | 8/30/2026 |
| 4.0.2 | 257 | 8/16/2026 |
| 4.0.1 | 599 | 7/8/2026 |
| 4.0.0 | 166 | 7/5/2026 |
| 3.0.2 | 303 | 6/13/2026 |
| 3.0.1 | 298 | 5/23/2026 |
| 3.0.0 | 159 | 5/17/2026 |
| 2.0.12 | 194 | 5/11/2026 |
| 2.0.11 | 365 | 3/22/2026 |
| 2.0.10 | 440 | 1/16/2026 |
| 2.0.9 | 386 | 11/2/2025 |
| 2.0.8 | 195 | 10/19/2025 |
| 2.0.7 | 288 | 9/3/2025 |
| 2.0.6 | 318 | 3/1/2025 |