1

使用 MVC 4.0 Web Api 我有一个长时间运行的数据库查询,它异步运行,在它完成之前,控制器完成其“获取”或“发布”操作。这一切都符合预期/想要的。

然而,尽管看起来 MVC 已将数据发送回客户端,但在长时间运行的查询完成之前,实际上并没有传输任何数据。

有什么方法可以强制将数据提前“输出”给客户端,甚至创建和传输新的响应?

4

1 回答 1

1

关键是我不需要查询的结果 - 我只想触发并忘记,并且立即向客户端返回响应(说查询已经开始)很重要

如果是即发即弃且您不需要将结果发送给客户端,只需启动任务

Task.Factory.StartNew(() => db.DoThatQueryThatBroughtDownChicago());

并返回一个字符串,一个 JSON 结果显示“任务已启动”。

于 2012-05-11T14:32:14.220 回答