如何链接调用,使用响应作为另一个的输入

coo*_*eze 2 c# asynchronous task-parallel-library async-await

是否可以将来自async呼叫的响应用作另一个的响应,以某种方式将它们链接在一起.

我正在寻找类似的东西:

var model = new MyModel() {

    abc = await _service.getAbc(),
    def = await _service.getDef(abc)
}
Run Code Online (Sandbox Code Playgroud)

我不确定这是否可行,只是询问异步/任务是否可以处理这种情况.

Ste*_*ary 5

你的代码几乎已经这样做了:

var abc = await _service.getAbc();
var def = await _service.getDef(abc);
var model = new MyModel() { abc, def };
Run Code Online (Sandbox Code Playgroud)

更一般地说,任何async方法都可以"链接"这样的方法.您await用来连接延续.