Quartznet-LiteDB
1.0.7
dotnet add package Quartznet-LiteDB --version 1.0.7
NuGet\Install-Package Quartznet-LiteDB -Version 1.0.7
<PackageReference Include="Quartznet-LiteDB" Version="1.0.7" />
paket add Quartznet-LiteDB --version 1.0.7
#r "nuget: Quartznet-LiteDB, 1.0.7"
// Install Quartznet-LiteDB as a Cake Addin #addin nuget:?package=Quartznet-LiteDB&version=1.0.7 // Install Quartznet-LiteDB as a Cake Tool #tool nuget:?package=Quartznet-LiteDB&version=1.0.7
Quartz.NET-LiteDB
JobStore implementation for Quartz.NET scheduler using LiteDB.
About
Quartz.NET is a full-featured, open source job scheduling system that can be used from smallest apps to large scale enterprise systems. Quartz.NET on LiteDB is a new provider written for Quartz.NET which lets us use the LiteDB NoSQL database as the persistent Job Store for scheduling data (instead of the SQL solutions that are built-in Quartz.NET).
Quartz.NET on LiteDB is a provider that is forked and adapted to LiteDB from Quartz.NET on RavenDB.
Installation
First add scheduling to your app using Quartz.NET (example). Then install the NuGet package.
Configuration & Usage
.NET Framework
In your code, where you would have normally configured Quartz to use a persistent job store, you must add the following configuration properties:
// In your application where you want to setup the scheduler:
NameValueCollection properties = new NameValueCollection
{
// Normal scheduler properties
["quartz.scheduler.instanceName"] = "TestScheduler",
["quartz.scheduler.instanceId"] = "instance_one",
["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz",
["quartz.threadPool.threadCount"] = "1",
["quartz.threadPool.threadPriority"] = "Normal",
// LiteDB JobStore property
["quartz.jobStore.type"] = "Quartz.Impl.LiteDB.LiteDbJobStore, Quartz.Impl.LiteDB"
// LiteDB Connection String
["quartz.jobStore.connectionString"] = "Filename=Quartz-Demo.db;",
};
// Init scheduler with the desired configuration properties
ISchedulerFactory sf = new StdSchedulerFactory(properties);
IScheduler scheduler = sf.GetScheduler();
.NET Core
For use in .NET Core Workers or ASP.NET Core use the recommended Fluent API when setting up a Quartz in ConfigureServices
like:
var configuration = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.Build();
var section = configuration.GetSection("MyService");
var config = section.Get<MyServiceConfig>();
services.AddQuartz(q =>
{
q.UseMicrosoftDependencyInjectionJobFactory();
q.UseDefaultThreadPool(tp =>
{
tp.MaxConcurrency = 10;
});
q.UsePersistentStore(s =>
{
s.UseLiteDb(options =>
{
options.ConnectionString = "Filename=Quartz-Worker.db";
});
s.UseBinarySerializer();
});
// Add jobs and triggers as you wish
}
);
services.AddQuartzHostedService(
q => q.WaitForJobsToComplete = true);
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. |
.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 is compatible. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. 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. |
-
.NETFramework 4.6.1
- LiteDB (>= 5.0.15)
- LiteDB.Async (>= 0.1.5)
- Microsoft.Extensions.Configuration.Abstractions (>= 2.1.1)
- Microsoft.Extensions.Options (>= 2.1.1)
- Quartz (>= 3.6.0)
-
.NETFramework 4.7.2
- LiteDB (>= 5.0.15)
- LiteDB.Async (>= 0.1.5)
- Microsoft.Extensions.Configuration.Abstractions (>= 2.1.1)
- Microsoft.Extensions.Options (>= 2.1.1)
- Quartz (>= 3.6.0)
-
.NETStandard 2.0
- LiteDB (>= 5.0.15)
- LiteDB.Async (>= 0.1.5)
- Microsoft.Extensions.Configuration.Abstractions (>= 2.1.1)
- Microsoft.Extensions.Options (>= 2.1.1)
- Quartz (>= 3.6.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.7 | 376 | 2/20/2023 |