ASP.NET Core MVC长期运行的操作

时间:2019-03-13 08:50:40

标签: c# asp.net background core

我有一个ASP.NET Core应用程序,该应用程序根据用户请求的令牌执行查询,并正在访问通过用户身份验证的外部系统。该请求需要很长时间才能完成,并且我想使其异步。为此,我一直在考虑使用后台服务来减轻工作负担,并使用SignalR来响应接收到的数据事件,但是我找不到一种“以用户身份”执行长时间运行的任务的好方法来自MVC控制器操作。

执行此操作的首选/最佳方法是什么?还是我错过了什么?

2 个答案:

答案 0 :(得分:0)

看看hosted services,这是如果您想自己实现所有任务的aspnet核心方法,可以执行长时间运行的任务,否则我也建议Hangfire

答案 1 :(得分:0)

是的,我建议您使用Hangfire,因为它可以安排带有Cron表达式的任务。 Cron表达式使您可以长时间设置任务,这可以给他们足够的时间来完成长时间的任务。