使用Web Api显示批量更新操作的状态

时间:2015-04-15 09:34:52

标签: angularjs asp.net-web-api

我需要知道如何使用批量更新操作的状态更新UI。例如,我向 WebApi 发送请求以更新多条记录(可能是任意数量的记录),现在我想向客户端显示每条记录的状态。

请建议我这样做的最佳方法。我正在使用 WebApi ,Angular。我正在考虑实施可以根据状态更新客户端UI的 SignalR ,但还有另一种方法吗?

1 个答案:

答案 0 :(得分:0)

对于你的api可能是一个简单的轮询请求,

signalr可能有点过分。

对于您正在使用批量更新操作所做的事情,它有点模棱两可,但由于您希望获得状态,我会认为这是一个漫长的缓慢操作你不是在等待初始请求中的回复。

Web api从一开始就将REST原则融入其中,所以我想你的批量更新操作是使用带有一组需要更新的对象的PUT。如果是这样,您可以直接从您的api请求这些对象来检查它们的状态,看看操作是否已更新它们。

如果你没有在一个实体上做一个简单的PUT而且它更像是一个提交批处理操作的POST,你应该保留操作实体并在初始调用中返回对它的引用然后随后轮询该操作通过id获取其当前状态。

信号器可以通过立即将已完成的事件推送到客户端来让它感觉更加实时,但它也会为您要实现的目标带来更多的开销