在我的服务中,我目前有一些任务和一个不断更新List的ReportProgress方法。如何将该列表返回给我的客户端主机应用程序?
服务方:
public async void BeginSync(string dbId)
{
var progressIndicator = new Progress<string>(ReportSyncProgress);
var output = await BeginSyncTaskAsync(dbId, progressIndicator);
}
...在任务中我有循环中的进度报告:
while ((output = process.StandardOutput.ReadLine()) != null)
{
progress.Report(output);
}
...这是我的报告方法:
public void ReportSyncProgress(string value)
{
// report by appending to global list
progressOutput.Add(value);
}
progressOutput是一个List,我需要我的客户端在更新时实时接收它。
谢谢!
答案 0 :(得分:1)
因为Rest服务没有会话,所以无法进行正常的WCF回调方法。相反,您需要做的是传递某种令牌,然后使用该令牌获取进度信息。
user_id Name sum_total_time
1 James Green 62
2 Robert Cox 69
3 Andy Roger 56
4 Brian Harper 0
5 Angel Lee 0
6 Andrew Martin 55
.....
.....
Nth Name Nth value