我在理解如何利用异步请求时遇到了一些麻烦。假设我有两个要调用返回结果的 Web 服务。在两个返回结果之后我想做一些操作。
这是我正在尝试做的一个非常简单的组合:
AWebService myWebService = new AWebService();
int firstNumber = myWebService.firstMethod();
int secondNumber = myWebService.secondMethod();
Console.WriteLn(firstNumber + secondNumber);
如何异步调用它们,并在继续我的代码之前等待它们都响应?我想你会写这样的东西(这是一些伪代码);
AWebService myWebService = new AWebService();
int firstNumber = myWebService.firstMethodAsync();
int secondNumber = myWebService.secondMethodAsync();
someWaitCommand;
Console.WriteLn(firstNumber + secondNumber);
但是,异步方法返回 null,我需要在异步方法的基础上设置回调方法。如果我需要多次调用同一个 Web 方法但对每个请求执行不同的操作怎么办?
作为旁注,我使用的是 c# 2.0,并且无法访问似乎经常成为本主题焦点的 Begin####/End#### 方法。