当在.net core web-api上使用respository模式的asyncawait时?

问题描述 投票:0回答:1

我想写一个简单的web api服务,有Users CRUD,我对在仓库模式下使用asyncawait方法有点困惑......模式的流程是:CONTROLLER > BLOGIC > REPOSITORY其中我必须在仓库模式下使用asyncawait方法。CONTROLLER > BLOGIC > REPOSITORY其中我必须在所有层中使用asyncawait方法还是只在顶层(controller层)?

c# async-await repository-pattern asp.net-core-3.1 mongorepository
1个回答
0
投票

async 是在你的代码结构中 "冒泡 "的,所以很明显异步代码的主要来源应该是你的repository层,但是为了利用它的异步性,你需要让所有的调用代码也是异步的(或者只是返回 Task<T> 如果调用者只是传递结果,而不对其做任何事情),否则你将需要在异步调用时进行阻塞,这基本上不仅消除了所有可能的收益,而且在某些情况下还会引入问题。

另外,请阅读 这个 回答:

© www.soinside.com 2019 - 2024. All rights reserved.