Hangfire.Community.JobsLauncher.Common
2.0.2
dotnet add package Hangfire.Community.JobsLauncher.Common --version 2.0.2
NuGet\Install-Package Hangfire.Community.JobsLauncher.Common -Version 2.0.2
<PackageReference Include="Hangfire.Community.JobsLauncher.Common" Version="2.0.2" />
<PackageVersion Include="Hangfire.Community.JobsLauncher.Common" Version="2.0.2" />
<PackageReference Include="Hangfire.Community.JobsLauncher.Common" />
paket add Hangfire.Community.JobsLauncher.Common --version 2.0.2
#r "nuget: Hangfire.Community.JobsLauncher.Common, 2.0.2"
#:package Hangfire.Community.JobsLauncher.Common@2.0.2
#addin nuget:?package=Hangfire.Community.JobsLauncher.Common&version=2.0.2
#tool nuget:?package=Hangfire.Community.JobsLauncher.Common&version=2.0.2
Hangfire.Community.JobsLauncher.Common
Lightweight dispatcher library for Hangfire.Community.JobsLauncher. It allows Hangfire workers to execute jobs launched manually from the dashboard without requiring business assemblies on the dashboard side.
π¦ Installation
Add the NuGet package to your worker projects (the ones that process the jobs):
``` dotnet add package Hangfire.Community.JobsLauncher.Common ```
π§ Setup
In the startup code of your worker (e.g., Program.cs or Startup.cs), call the following method before starting the Hangfire server:
```csharp Hangfire.Community.JobsLauncher.Common.JobLauncherDispatcher.EnableDynamicJobSupport(); ```
This call:
- Documents that the worker supports manually launched jobs.
- Prevents "unused package" warnings.
- No other initialization is required.
Note: If you are using Hangfire.DynamicJobs as your recurring engine, make sure that package is also installed and configured in your worker.
π§± What It Does
The library contains the JobLauncherDispatcher class with two essential methods:
ExecuteJobβ the core method that:- Resolves the target type and method at runtime via reflection.
- Deserializes the parameters from JSON.
- Converts each parameter to the expected .NET type.
- Invokes the method with the correct arguments.
ConvertJsonElementβ a helper to convert individual JSON elements to complex .NET types (lists, dictionaries, objects, enums, nullables, etc.).
When the dashboard cannot resolve the business class (manual mode), it enqueues a call to JobLauncherDispatcher.ExecuteJob with the following serialized data:
ClassNameMethodNameQueue- Serialized parameters (JSON)
- Flags for
PerformContextandCancellationToken
The worker picks up the job and the dispatcher invokes the real business logic.
π¦ When Is It Needed?
β You are using the manual mode of the Job Launcher dashboard.
β You want to keep your dashboard thin and avoid deploying business assemblies to the dashboard host.
β You run multiple workers that need to execute the same manual jobs.
β You only use the assisted mode (the dashboard has access to the business assembly). In that case the workers only need the business assemblies, not this library.
π Related Packages
| Package | Purpose |
|---|---|
Hangfire.Community.JobsLauncher.Dashboard |
The dashboard UI and APIs |
Hangfire.Community.JobsLauncher.Common |
This one β dispatcher for workers |
Hangfire.DynamicJobs (optional) |
Advanced recurring engine for dynamic job types |
π License
This project is distributed under the MIT License. See the LICENSE file for details.
| 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 was computed. 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
- HangFire.Core (>= 1.8.0)
- System.Text.Json (>= 8.0.5)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Hangfire.Community.JobsLauncher.Common:
| Package | Downloads |
|---|---|
|
Hangfire.Community.JobsLauncher.Dashboard
Extends the Hangfire Dashboard with a UI to manually launch jobs, view launch history, manage reusable templates, and maintain an immutable audit log. Supports Fire - Forget, Schedule, Recurring (with Cron generator), and Continuation modes. Resolves types in real-time and offers three recurring engines: Direct, Builtβin (via dispatcher), and DynamicJobs. Includes critical queue confirmation and full pagination for history and audit views. |
GitHub repositories
This package is not used by any popular GitHub repositories.