AspNetCore+Hangfire:JobthrowingJobLoadException
创始人
2024-09-20 07:30:31
0

当使用AspNet Core和Hangfire来执行调度任务时,有时可能会遇到JobLoadException异常,此异常会阻止任务的执行。这通常是由于依赖注入问题引起的,因为Hangfire调用未被正确地注入或配置。

要解决此问题,我们需要确保Hangfire可以正确地访问所需的依赖项。我们可以在配置中添加一个服务提供程序,并将其传递给Hangfire。

以下是一个示例的Startup.cs文件,展示了如何在AspNet Core中配置Hangfire,并解决JobLoadException异常:

using Hangfire;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

namespace MyApp
{
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            // 添加Hangfire的服务
            services.AddHangfire(configuration => {
                configuration.UseSqlServerStorage(Configuration.GetConnectionString("Hangfire"));
            });

            // 将IServiceProvider包装在一个Func 委托中
            services.AddTransient>(serviceProvider => () => serviceProvider);

            // 注册自己的服务
            services.AddTransient();

            //添加MVC等其他服务
            services.AddMvc();
        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            // 使用Hangfire
            app.UseHangfireDashboard();
            app.UseHangfireServer();

            // 添加任务
            RecurringJob.AddOrUpdate("MyServiceJob", x => x.DoWork(), Cron.Minutely());

            // 添加MVC等其他服务
            app.UseMvc();
        }
    }
}

在这个示例中,我们添加了一个IServiceProvider委托来包装服务提供程序。然后,将MyService服务注册为服务,并将其在Configure方法中添加到RecurringJob。这将确保Hangfire可以访问所需的依赖项,并且可以成功执行所需的作业。

相关内容

热门资讯

五分钟黑科技!闲趣麻将有什么猫... 五分钟黑科技!闲趣麻将有什么猫腻,红龙扑克会作假(详细透视辅助挂教程)是一款可以让一直输的玩家,快速...
九分钟了解!雀神辅助器最新款,... 九分钟了解!雀神辅助器最新款,轰趴大菠萝十三水有外 挂(详细透视辅助神器教程);雀神辅助器最新款最新...
四分钟介绍!wepoke辅助技... 四分钟介绍!wepoke辅助技巧,德州之星ai辅助(详细透视辅助插件教程)wepoke辅助技巧平台为...
八分钟攻略!永州四王扯胡子包赢... 八分钟攻略!永州四王扯胡子包赢,众合推扑克辅助工具(详细透视辅助软件教程)1、这是跨平台的永州四王扯...
五分钟透明!双辽麻将有挂吗,微... 《软件透明挂》是一款多人竞技的辅助透视游戏,你将微扑克对手来到同一个战场,为至高无上的荣耀进行一次自...
we辅助poker德之星!we... we辅助poker德之星!wepoke有假吗(wepoke好友房)切实是真的有挂(详细智能ai教程)...
WePoKe透明挂!wepok... WePoKe透明挂!wepoke德州扑克系统规律(wepoke app)一直存在有挂(详细透视挂教程...
微扑克辅助挂!微扑克wpk安全... 《微扑克辅助挂软件透明挂》是一款多人竞技的微扑克辅助挂辅助透视游戏,你将微扑克对手来到同一个战场,为...
红龙扑克辅助!红龙扑克有挂吗,... 红龙扑克辅助!红龙扑克有挂吗,(红龙扑克)其实是有挂(详细辅助器教程)1、让任何用户在无需AI插件第...
红龙扑克辅助器!红龙扑克好友桌... 红龙扑克辅助器!红龙扑克好友桌,(红龙扑克)一贯真的有挂(详细辅助工具教程);原来确实真的有挂(需添...