【发布时间】:2020-01-01 18:20:13
【问题描述】:
在我们的项目中,我们使用的是 aspnetzero 模板。该模板允许简单但抽象地使用hangfire。现在我们想将Hangfire.Console 添加到我们的项目中,这将允许我们将日志写入hangfires 仪表板。
为了将日志语句写入仪表板控制台,我们必须访问当前正在运行的作业的 PerformContext。不幸的是,由于aspnetzero 中的抽象,我们不能inject the PerformContext,因为它会由hangfire 计划。我们可以访问的是 hangfire 命名空间和所有它的静态对象。
因此我的问题是:除了将 null 传递给执行方法之外,还有其他方法可以获取 PerformContext 吗?
到目前为止我所做的尝试:
- 通过使用 IServerFilter 接口,应该调用方法 OnPerforming。但不幸的是,在 aspnetzero 后台作业中并非如此。
- 我试图覆盖/扩展 aspnetzero 的给定基类 BackgroundJob,但没有成功。也许有人可以在这个方向上给我一个提示。
【问题讨论】:
标签: aspnetboilerplate hangfire abp hangfire-console