Hangfire是一个综合的后台工作管理者。你可以将Hangfire集成到ABP中,这样就可以不使用默认的后台工作管理者了。但你仍然可以为Hangfire使用相同的后台工作API。这样,你的代码就独立于Hangfire了,但是,如果你喜欢的话,也可以直接使用Hangfire的API。
首先,将Abp.HangFirenuget包安装到你的项目中,然后你可以为Hangfire安装任何存储。最常用的一个存储室SQL Server存储(查看 Hangfire.SqlServer nuget包)。安装完这些nuget包之后,你才可以在ABP中配置Hangfire,如下所示:
[DependsOn(typeof (AbpHangfireModule))]
public class MyProjectWebModule : AbpModule
{
public override void PreInitialize()
{
Configuration.BackgroundJobs.UseHangfire(configuration =>
{
configuration.GlobalConfiguration.UseSqlServerStorage("Default");
});
}
//...
}
如上所示,我们添加了AbpHangfireModule作为依赖,并使用了Configuration.BackgroundJobs.UseHangfire
方法来开启和配置Hangfire(“Default”是web.config中的连接字符串名称)。
注意:Hangfire要求创建数据库模式的权限,因为第一次运行时,它要创建自己的模式和表。
查看Hangfire文档获取更多信息。
本文转自tkbSimplest博客园博客,原文链接:http://www.cnblogs.com/farb/p/ABPHangfireIntegration.html,如需转载请自行联系原作者