使用3.0.0-beta3版本的C#本机软件包,因为在解析阶段会分配官方文档的默认值,因此无法区分是否未传递任何值,出于我的目的,这是至关重要的一点,因为我想做一些解码原型实体的验证类型,因此想知道是否有人对数据进行自定义验证或以任何方式覆盖/拦截解析阶段有经验?
一些基本的例子:
除了在protobuf程序包/ API上编写自定义验证层之外,您如何建议?我仍然希望有一个可扩展性点,但尚未找到
验证需要在应用程序代码后解析中完成。解析器本身没有执行此操作的钩子。
Proto3不会区分默认值字段和未发送字段。实际上,在发送端,如果将该字段显式设置为其默认值,则不会对其进行编码。因此,没有办法在proto3中实现您的第一个规则。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句