小编Pau*_*aul的帖子

在后台运行任务,但在ASP MVC Web应用程序中返回对客户端的响应

我正在尝试实现一种功能,其中SQL Server上存在必须从ASP MVC应用程序调用并在后台处理的存储过程(可能需要很长时间,因为它远程调用另一个存储过程来处理存储在其上的excel文件服务器).但是最后一个HTTP请求的响应应该返回给客户端,因此UI不会挂起等待处理.

我尝试了很多不同的方法,但UI仍然没有立即响应.

我试过BackgroundWorker但它不允许主线程在完成处理之前回复客户端,我也尝试过:

Thread.QueueUserWorkItem(delegate { //method which performs stored procedure calls//
}); 
Run Code Online (Sandbox Code Playgroud)

它仍然没有返回响应,并且HttpContext.Current在后台线程中不可用.

也许有一种方法可以启动后台处理,暂停它让主线程返回对浏览器的响应,然后恢复后台线程以使用存储过程调用进行所有处理?

我错过了什么吗?

有人可以问一下如何解决这个问题?非常感谢.

c# asp.net-mvc multithreading

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

multithreading ×1