hangfire“jobstorage.current”属性初始化失败?

q5lcpyga  于 2021-07-26  发布在  Java
关注(0)|答案(0)|浏览(232)

我们对hangfire还不熟悉,正努力让它运转起来。我们使用的是一个旧的asp.net版本,带有一个global.asax文件,而不是一个启动文件。我们有两个不同的环境,dev和staging。
除了HangfireSQL数据库的连接字符串外,代码是相同的,因为它位于不同的服务器上。在dev中一切都很好。表被创建,作业运行。但当我们将所有内容迁移到staging时,会出现以下错误,hangfire表无法创建:
jobstorage.current属性值尚未初始化。必须在使用hangfire客户端或服务器api之前进行设置
正如我所说,在我们的开发环境中,一切都可以正常工作,但是在staging中,我们会遇到错误,表也无法创建。我仍将包含代码以供参考。我假设这是一个问题连接到数据库或有权限的东西?任何理解这个错误的人能详细说明一下吗?

private IEnumerable<IDisposable> GetHangfireServers()
    {
        _kernel = new StandardKernel(new PartnerIntegrationServiceNinjectModule());
        GlobalConfiguration.Configuration
                           .SetDataCompatibilityLevel(CompatibilityLevel.Version_170)
                           .UseSimpleAssemblyNameTypeSerializer()
                           .UseRecommendedSerializerSettings()
                           .UseSqlServerStorage(_kernel.Get<ISettings>().HangfireConnectionString, new SqlServerStorageOptions
                           {
                               CommandBatchMaxTimeout = TimeSpan.FromMinutes(5),
                               SlidingInvisibilityTimeout = TimeSpan.FromMinutes(5),
                               QueuePollInterval = TimeSpan.Zero,
                               UseRecommendedIsolationLevel = true,
                               DisableGlobalLocks = true,
                               SchemaName = "Hangfire"
                           }) ;

        yield return new BackgroundJobServer();
    }

    protected override void OnApplicationStarted()
    {
        base.OnApplicationStarted();

        HangfireAspNet.Use(GetHangfireServers);

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题