Protobuf-net:如何从隐式所有公共字段的波尔图合同中排除只读属性(只有吸气剂)?

Posted

技术标签:

【中文标题】Protobuf-net:如何从隐式所有公共字段的波尔图合同中排除只读属性(只有吸气剂)?【英文标题】:Protobuf-net: How to exclude read-only properties(with only getters) from porto contract of implicit all public fields? 【发布时间】:2014-02-10 12:03:05 【问题描述】:

我在我的项目中使用 protobuf-net 序列化并说明 [ProtoContract(ImplicitFields = ImplicitFields.AllPublic)] 方法。

我的班级有一些属性,其中只有吸气剂。即只读属性。 序列化程序尝试序列化这些属性,但会抛出一个错误,指出无法更改此属性。

目前我已在此类属性上添加了 [ProtoIgnore] 属性,该属性正在运行。

我想知道是否有另一种方法可以让它忽略所有没有设置器的属性。提前致谢。

【问题讨论】:

【参考方案1】:

不;一切就是一切。实际上,我很少推荐使用隐式字段(请参阅智能感知中的警告)。

【讨论】:

以上是关于Protobuf-net:如何从隐式所有公共字段的波尔图合同中排除只读属性(只有吸气剂)?的主要内容,如果未能解决你的问题,请参考以下文章

如何找到隐式转换的SQL?

SVD++分解

MySQL隐式转换案例一则

使用protobuf-net继承时如何选择字段号?

隐式转换的替代方案不是万能的

如何通过 ProtoBuf-net 使用 DateTimeKind 选项序列化 DateTime 字段