gpt4 book ai didi

hangfire - 从数据库脚本触发重复的 Hangfire 作业

转载 作者:行者123 更新时间:2023-12-05 06:09:21 26 4
gpt4 key购买 nike

我有一个非常复杂的 sql 脚本来清理我的数据库,并且会不时手动运行。脚本运行后,我必须立即启动一个经常性的 hangfire 作业,该作业通常每天只执行一次。

为了不忘记运行脚本,我想直接从sql脚本触发执行。有没有一种简单的方法来修改其中一个 hangfire 表来完成这个任务?

Hangfire核心版本为1.7.5

更新:不幸的是,我没有找到任何包含重复作业的 hangfire 表。因此我猜他们根本没有坚持。是否可以通过在 HangFire.Job 表中插入一个新行来运行作业?或者这是个坏主意?

最佳答案

很抱歉没有在 stackoverflow 上跟进这个问题。由于缺乏纯粹的hangfire 解决方案,我终于在单独的“DatabaseState”表 的帮助下实现了一些自定义逻辑。

我的 DatabaseState 表有以下字段:DateOfDbUpdate(datetime) 和 HangfireExecuted(bool)。每当我运行复杂的 SQL 脚本时,我只是在表中插入一个包含当前时间和 HangfireExecuted = false 的新条目。

在代码中,我创建了一个循环 hangfire 作业,它每隔几秒检查一次 DatabaseState 表中是否有 HangfireExecuted == false 的新条目。如果找到这样的条目,它将开始清理工作。

不幸的是,这不是一个非常干净和直接的解决方案。如果有人提出真正的 hangfire 解决方案,我会很高兴。

关于hangfire - 从数据库脚本触发重复的 Hangfire 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64820835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com