Lyo.Schedule.Models
2.0.0
dotnet add package Lyo.Schedule.Models --version 2.0.0
NuGet\Install-Package Lyo.Schedule.Models -Version 2.0.0
<PackageReference Include="Lyo.Schedule.Models" Version="2.0.0" />
<PackageVersion Include="Lyo.Schedule.Models" Version="2.0.0" />
<PackageReference Include="Lyo.Schedule.Models" />
paket add Lyo.Schedule.Models --version 2.0.0
#r "nuget: Lyo.Schedule.Models, 2.0.0"
#:package Lyo.Schedule.Models@2.0.0
#addin nuget:?package=Lyo.Schedule.Models&version=2.0.0
#tool nuget:?package=Lyo.Schedule.Models&version=2.0.0
Lyo.Schedule.Models
Schedule-only DTOs. Lyo.Scheduler, Lyo.Job.Postgres, and any other consumer that wants a transport-friendly answer to "when does this run" take a dependency here.
Examples
First steps
using Lyo.Schedule.Models;
var weekday = new ScheduleDefinitionBuilder()
.SetTimes(new TimeOnly(8, 0), new TimeOnly(17, 0))
.OnDays(DayOfWeek.Monday | DayOfWeek.Tuesday | DayOfWeek.Wednesday | DayOfWeek.Thursday | DayOfWeek.Friday)
.Build();
var cron = new ScheduleDefinitionBuilder()
.SetCron("0 */15 * * * *") // every 15 minutes (6-field, second precision)
.Build();
cron.Validate(); // throws ArgumentException for invalid cron expressions
var next = CronExpression
.Parse(cron.CronExpression!, CronFormat.IncludeSeconds)
.GetNextOccurrence(DateTimeOffset.UtcNow, TimeZoneInfo.Utc);
Types
| Type | What it does |
|---|---|
ScheduleType |
Enum whose values are SetTimes, Interval, OneShot, and Cron. |
ScheduleDefinition |
Immutable record that holds Type, DayFlags, MonthFlags, set-times, interval bounds, a one-shot timestamp, and CronExpression. Validate() throws if the fields do not match the chosen ScheduleType. |
ScheduleDefinitionBuilder |
Fluent builder exposing SetTimes(...), Interval(...), OneShot(...), SetCron(string), OnDays(DayOfWeek), and InMonths(...). A Set* mutator also switches Type, so inconsistent fields cannot be combined. |
CronExpression / CronFormat |
Cron parser and evaluator that stand alone. Pass the expression plus a CronFormat into CronExpression.Parse. |
Dependencies
Generated from ProjectReference / PackageReference (same model as docs/Lyo.ProjectGraph.html).
Lyo.Common.Core(direct, lyo)Lyo.DateAndTime(direct, lyo)Lyo.Exceptions(direct, lyo)Lyo.Common.Metadata(transitive, lyo)Microsoft.Bcl.AsyncInterfaces10.0.5(transitive, microsoft, netstandard2.0)System.Memory4.6.3(transitive, microsoft, netstandard2.0)System.Text.Json10.0.5(transitive, microsoft, netstandard2.0)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Lyo.Common.Core (>= 2.0.0)
- Lyo.DateAndTime (>= 2.0.0)
- Lyo.Exceptions (>= 2.0.0)
-
net10.0
- Lyo.Common.Core (>= 2.0.0)
- Lyo.DateAndTime (>= 2.0.0)
- Lyo.Exceptions (>= 2.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Lyo.Schedule.Models:
| Package | Downloads |
|---|---|
|
Lyo.Job.Models
Job management models and DTOs for the Lyo API job management system. |
|
|
Lyo.Scheduler
In-process scheduler service for executing actions at scheduled times. Supports SetTimes, Interval, and OneShot schedules with logging, metrics, and optional state persistence. |
GitHub repositories
This package is not used by any popular GitHub repositories.