Web.Api .NET Core控制器中的异步执行

时间:2018-04-04 15:13:29

标签: .net async-await core web.api

与async / await有不同的beetwen调用服务方法:

    [HttpPost]
    public async Task<SmthResponce> AddSmth([FromBody] SmthRequest smthRequest)
    {
        return await smthsService.AddSmthAsync(smthRequest);
    }

且没有:

    [HttpPost]
    public Task<SmthResponce> AddSmth([FromBody] SmthRequest smthRequest)
    {
        return smthsService.AddSmthAsync(smthRequest);
    }

1 个答案:

答案 0 :(得分:3)

从来电者的角度来看,没有区别;然而...

第一种方法(等待)涉及创建一个额外的任务,该任务将在内部任务完成时完成。

第二种方法(如果可能,直接返回任务)是首选。