使用Autofac在WebApi中进行Hangfire:作业未运行

时间:2017-02-04 17:04:45

标签: c# asp.net-web-api owin autofac hangfire

我在我的WebApi应用程序中使用Hangfire和Hangfire.MemoryStorage

我在自己的startup.cs中配置了Hangfire:

 Hangfire.GlobalConfiguration.Configuration.UseMemoryStorage();
 app.UseHangfireServer();

我尝试在控制器中使用作业激活

var jobId = BackgroundJob.Schedule(
                    () => ForceMissionEmail(mission.Guid),
                    TimeSpan.FromSeconds(10));

代码运行时没有错误,但10秒后不会调用ForceMissionEmail方法。

1 个答案:

答案 0 :(得分:0)

使用Hangfire.Autofac Nuget包和以下代码行解决了我的问题

IContainer container = AutoFacConfig.Register(config, app);
Hangfire.GlobalConfiguration.Configuration.UseAutofacActivator(container);
Hangfire.GlobalConfiguration.Configuration.UseMemoryStorage();
app.UseHangfireServer();