c# - 在 .NET 代码优先 gRPC 中指定截止日期
问题描述
使用 .NET 的代码优先 gRPC,调用服务时如何指定截止日期?Microsoft 的具有截止日期和取消页面的可靠 gRPC 服务仅包含非代码优先调用的示例。
我的 gRPC 接口通过.NET 的 Code-first gRPC 服务和客户端CallContext
指定,但是在该页面上 - 或者在我能找到的任何其他页面上 - 没有关于预期如何使用它的示例。
查看CallContext
's 的代码,它可以通过一个ServerCallContext
包含截止日期的。然而,这个类是抽象的,我能找到的唯一实现是内部的。
最后,CallContext.Default
其中包含 a Deadline
,但是这个类是不可变的,所以也没什么帮助。
解决方案
就在我发布后,我找到了方法:
var deadline = DateTime.UtcNow.AddSeconds(15);
var context = CallContext.Default.CallOptions.WithDeadline(deadline);
await myService.DoStuffAsync(context);
推荐阅读
- reactjs - 反应加载状态不显示
- reactjs - 通知用户新版本的 React App 可用的最佳实践?
- reactjs - 从 redux-thunk 获取租金时未定义租金?
- python - 使用窗口函数后无法理解时间的输出值?
- boost - Boost:named_mutex 是否需要磁盘 IO?
- spring - 使用 Spring Security 进行身份验证后,如何处理用户按下后退按钮?
- .net - 我们可以在 .NET Framework ASP.NET Web API 中使用 Entity Framework Core 吗?如果有怎么办?
- laravel - 关于heroku中日志的一些困惑
- c# - 在 T-SQL 中编写这个 C# 函数
- windows - 如何从批处理文件中的特定文件夹及其子文件夹中查找名称不带下划线的所有 jpeg 文件,然后重命名