C# 中的异步 gRPC 服务方法

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

我目前正在尝试找出如何实现基于 proto 文件生成的异步服务方法,但我不太确定如何去做。

是否有需要重写的虚拟异步服务方法?或者我只需要重写虚拟同步服务方法?如果是后者,我在重写同步服务方法时是否需要包含

async
await
的使用?

生成的异步服务方法与生成的同步服务方法如何配合?

c# grpc
1个回答
0
投票

服务端生成的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

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