1

WebAPI 是否有任何内置支持来启动一些工作并立即返回给调用者并确认。我正在寻找一个数据处理服务器,它有一些需要运行的长时间运行的进程。客户从不期望立即得到结果,并且可以稍后查询它们。

在这种情况下,我正在寻找一种方法来以不会阻止控制器返回的方式启动一些工作。

4

1 回答 1

3

WebAPI 中没有任何东西可以阻止您开始一些后台工作并立即返回。所以你可以像这样实现一个动作:

public HttpResponseMessage Post()
{
     Task.Factory.StartNew(() => DoWork());
     return new HttpResponseMessage(HttpStatusCode.Accepted);
}

这只是一个简单的示例,但您可能希望在某种字典中跟踪任务,以便稍后在客户端查询结果时返回结果。

于 2013-01-15T02:36:24.533 回答