请求/确认模式ASP.NET WebAPI

时间:2013-01-14 15:56:06

标签: asp.net-web-api

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

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

1 个答案:

答案 0 :(得分:3)

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

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

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