【问题标题】:Hangfire Error on startup启动时出现Hangfire错误
【发布时间】:2025-12-22 09:35:07
【问题描述】:

hangfire 有一段时间运行良好,然后我尝试回滚到支持 .net 4.5.1 的先前版本,然后我回到 .net 4.6.1 并使用 Owin 3.1 将hangfire 重新升级到 1.6.14 .我已将所有代码/nuget 引用等重置为 1.6.14,并删除了所有表,以便重新创建它们,但我仍然收到此错误:

'hangfire.dashboard.dashboardmiddleware' 没有带 5 个参数的构造函数。

我正在使用 owin 3.1,使用此代码时会发生这种情况:

    [assembly: OwinStartup(typeof(MyWebApplication.Startup))]
    namespace MyWebApplication
    {
    public class Startup
    {
    public void Configuration(IAppBuilder app)
    {
            app.UseHangfire(config =>
            {
                  config.UseSqlServerStorage(ConfigurationManager.ConnectionStrings["QueueConnection"].ConnectionString);
                  config.UseServer();
            });
    }

有什么想法吗?

【问题讨论】:

    标签: owin hangfire


    【解决方案1】:

    尝试像这样使用hangfire:

    JobStorage.Current = new SqlServerStorage(constr);
    app.UseHangfireDashboard();
    app.UseHangfireServer();
    

    【讨论】:

      【解决方案2】:

      你可以使用:

         var options = new BackgroundJobServerOptions { WorkerCount = Environment.ProcessorCount * 5 };
              app.UseHangfireServer(options);
      

      【讨论】:

        最近更新 更多