不完整的控制器操作作业句柄

Incomplete Controller Action job handle

我正在开发一个 asp.net mvc 项目。我必须从我的应用程序中将某些实体导出到另一个应用程序。

我做的是

1) 我在单击按钮时导出某些实体

2) 成功导出后,我将这些实体标记为已导出

现在的问题是,如果在数据库浏览器被标记为导出之前关闭或网络连接中断怎么办?

可能发生3例

1) 导出和数据库更新都已完成

2) 导出可能完成但数据库未更新

3) 导出和数据库更新都没有完成

在 2 号和 3 号的情况下,我被困住了。因此,如果有一个用于 Web 应用程序的后台处理器,那将会很有帮助,而且我始终可以确保第 1 个发生。

我经历了各种 webbackground 作业处理程序,如 webbackgrounder、hangfire、quartz.ne 等。

但我看到的是他们实际上是在定期执行预定的工作。 我怎样才能真正从这些后台处理程序执行任务,就好像我在控制器中执行它并访问 db 一样。

在我的情况下,异步控制器是否可以作为另一种选择? 对于服务器中 运行 的另一个控制台应用程序,许多人都气馁地说为什么我不使用可用的库来处理后台作业

我现在在用hangfire,后台处理的很顺利