Sparkdo.BackgroundJobs.Hangfire 1.0.1

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Sparkdo.BackgroundJobs.Hangfire --version 1.0.1
                    
NuGet\Install-Package Sparkdo.BackgroundJobs.Hangfire -Version 1.0.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sparkdo.BackgroundJobs.Hangfire" Version="1.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sparkdo.BackgroundJobs.Hangfire" Version="1.0.1" />
                    
Directory.Packages.props
<PackageReference Include="Sparkdo.BackgroundJobs.Hangfire" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sparkdo.BackgroundJobs.Hangfire --version 1.0.1
                    
#r "nuget: Sparkdo.BackgroundJobs.Hangfire, 1.0.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sparkdo.BackgroundJobs.Hangfire@1.0.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sparkdo.BackgroundJobs.Hangfire&version=1.0.1
                    
Install as a Cake Addin
#tool nuget:?package=Sparkdo.BackgroundJobs.Hangfire&version=1.0.1
                    
Install as a Cake Tool

Sparkdo.BackgroundJobs.Hangfire

Sparkdo Hangfire 后台作业库,提供基于 Hangfire 的后台作业功能集成实现。

功能特性

  • 与 Hangfire 后台作业框架无缝集成
  • 支持后台作业的排队和执行
  • 支持作业优先级和延迟执行
  • 支持队列配置和管理
  • 与 Sparkdo 框架无缝集成
  • 支持 ASP.NET Core 中间件集成

安装

<PackageReference Include="Sparkdo.BackgroundJobs.Hangfire" Version="x.x.x" />

核心组件

SparkdoBackgroundJobsHangfireModule

Hangfire 后台作业模块配置类,负责配置和注册 Hangfire 相关服务到依赖注入容器中:

  • 注册 SparkdoDashboardOptionsProvider 服务
  • 替换默认的后台作业管理器为 Hangfire 实现
  • 根据配置决定是否启用后台作业执行

HangfireBackgroundJobManager

Hangfire 后台作业管理器实现,负责将后台作业排队到 Hangfire 系统中执行:

  • EnqueueAsync(): 将作业加入队列异步执行
  • GetQueueName(): 获取队列名称

HangfireJobExecutionAdapter

Hangfire 作业执行适配器,负责适配 Hangfire 作业执行与 Sparkdo 后台作业执行机制:

  • ExecuteAsync(): 执行作业

SparkdoDashboardOptionsProvider

Sparkdo Hangfire 仪表板选项提供者,负责配置和提供 Hangfire 仪表板的显示选项:

  • Get(): 获取仪表板选项

SparkdoHangfireApplicationBuilderExtensions

ASP.NET Core 应用程序构建器扩展类,提供用于配置和启用 Hangfire 仪表板功能的扩展方法:

  • UseSparkdoHangfireDashboard(): 在应用程序管道中启用 Sparkdo Hangfire 仪表板

使用方法

在您的模块中添加对 Hangfire 的依赖:

public class YourModule : Module
{
    public override void Configure(IConfigureContext context)
    {
        // 添加其他配置...
    }
}

Program.cs 或启动配置中启用 Hangfire 仪表板:

app.UseSparkdoHangfireDashboard();

扩展性

该库提供了完整的 Hangfire 集成功能实现,可以通过以下方式扩展:

  1. 继承 HangfireBackgroundJobManager 来添加自定义的作业管理逻辑
  2. 通过 ASP.NET Core 中间件配置来自定义 Hangfire 仪表板行为
  3. 实现自定义的作业执行适配器

代码结构说明

本项目包含以下主要组件:

模块配置

  • SparkdoBackgroundJobsHangfireModule: Hangfire 后台作业模块配置类

作业管理

  • HangfireBackgroundJobManager: Hangfire 后台作业管理器实现
  • HangfireJobExecutionAdapter: Hangfire 作业执行适配器

仪表板配置

  • SparkdoDashboardOptionsProvider: Sparkdo Hangfire 仪表板选项提供者

ASP.NET Core 集成

  • SparkdoHangfireApplicationBuilderExtensions: ASP.NET Core 应用程序构建器扩展

所有公共接口和类都添加了详细的 XML 文档注释,便于开发者理解和使用。

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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.2-preview.4 48 2/8/2026
1.0.2-preview.3 50 2/1/2026
1.0.2-preview.2 51 1/31/2026
1.0.2-preview.1 152 12/4/2025
1.0.1 189 11/27/2025
1.0.0 194 11/25/2025
1.0.0-preview.5 115 10/24/2025