检查 protoBuf 中是不是存在消息类型
Posted
技术标签:
【中文标题】检查 protoBuf 中是不是存在消息类型【英文标题】:Check the presence of a message type in protoBuf检查 protoBuf 中是否存在消息类型 【发布时间】:2021-07-07 07:13:46 【问题描述】:我是 gRPC 的新手,想检查 C# 语言中是否存在消息字段。我知道我们可以在 Java 中使用 hasField() 属性,但在 C# 中没有提到任何此类属性。
message foo
...
message bar
foo data=1;
如何查看消息栏中的数据字段是否设置?
【问题讨论】:
【参考方案1】:除非标记为optional
,否则字段将出现在每条消息中。
见optional
data
(类型foo
)中的字段可能未设置,在这种情况下使用默认值。见语言guide。
注意您的问题具体涉及 protobufs(发送的消息)而不是 gRPC(RPC 机制)。
【讨论】:
以上是关于检查 protoBuf 中是不是存在消息类型的主要内容,如果未能解决你的问题,请参考以下文章
检查是不是存在任何错误消息并在 laravel 中显示所有错误消息
如何停止使用 protobuf3 打印错误消息“无法解析类型的消息,因为它缺少必填字段”