我目前正在尝试找出如何实现基于 proto 文件生成的异步服务方法,但我不太确定如何去做。
是否有需要重写的虚拟异步服务方法?或者我只需要重写虚拟同步服务方法?如果是后者,我在重写同步服务方法时是否需要包含
async
和await
的使用?
生成的异步服务方法与生成的同步服务方法如何配合?
服务端生成的GrpcService只有
virtual
异步方法。YourProtoRpc.YourProtoRpcBase
。override
和空格。YourProtoMethod
。
此外,如果虚拟方法返回
Task
或 Task<TResult>
并且您覆盖的方法没有 await
任何内容。Task.CompletedTask
或 Task.FromResult<TResult>()
。
我猜您已经阅读了下面的链接,但为了以防万一,我会保留它。
https://learn.microsoft.com/en-us/aspnet/core/grpc/services?view=aspnetcore-8.0 https://learn.microsoft.com/en-us/aspnet/core/grpc/client?view=aspnetcore-8.0