Hangfire很容易加载程序集

上下文

我有两个应用程序,一个是我的主要企业应用程序,另一个是我有hangfire(hangfire服务器,客户端和仪表板)托管。 我的主应用程序也使用hangfire执行一些长任务并异步执行它们。 两者都使用相同的DB进行HF存储。 并且只有一个HF服务器。

问题

我间歇性地得到以下错误 –

“无法将状态更改为’处理’:找不到目标方法。” 要么

“无法将状态更改为’已排队’:找不到目标方法。”

以下详细信息 –

System.IO.FileNotFoundException

无法加载文件或程序集“MyApp.Hangfire,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。 该系统找不到指定的文件。

MyApp.Hangfire是我的hangfire应用程序执行作业。 而且我确信它存在,甚至一些成功的工作也证实了这一点。

请查看附带的屏幕截图以获取更多详细信

在此处输入图像描述

意见

问题不一致,作业并不总是失败,有时会失败,重新排队并通过,有时当它没有重试时甚至会失败。 如截图所示

我几天前偶然发现了同样的问题,并决定在这里添加它。
解决方案:在仪表板Web应用程序中添加了对“MyApp.Hangfire”的引用。

上下文与您的上下文非常相似或完全相同:
-Hangfire服务器作为Windows服务运行;
-Hangfire仪表板运行在ASP.NET MVC 5应用程序之上;
-jobs实际上正在运行,但仪表板一直显示FileNotFoundException;

@reggieboyYEAH以同样的方式报告并解决了同样的问题 。
详情请访问: https : //github.com/HangfireIO/Hangfire/issues/558