Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试将流反序列化为具有默认值属性的对象,而 protobuf-net 只是在流中缺少这些属性时才引入这些属性。在将所有属性反序列化为默认值之前,我是否需要手动设置?
DefaultValues行为(不仅在 protobuf-net 中 -通常System.ComponentModel ,例如PropertyGrid,PropertyDescriptor等)是用于指示不需要序列化的事物,因为它们将自动默认为相同的值。因此,它假定如果您的代码注释 a DefaultValue,那么您的代码将分配这些默认值。这可以在构造函数、字段初始化器或预反序列化回调中(支持所有 4 个标准回调点)。
DefaultValues
System.ComponentModel
PropertyGrid
PropertyDescriptor
DefaultValue
从技术上讲,库在反序列化之前明确分配这些值并非不可能 - 但很简单:这不是目前编码的内容。