我有一个HybridDictionary
对象。是否可以使用Protobuf-net
来序列化HybridDictionary
对象?protobuf-net是否支持HybridDictionary?
1
A
回答
1
目前没有,并有很好的理由:
- 没有理解一个
HybridDictionary
的数据合同的方式,因为它只发布object
密钥和值两者; protobuf网真的,真的想要了解的各类参与 - 它不是吸引力来支持它,因为在很多情况下,它会要求拳击 - 通常是关键的(如果不是
string
),但往往的值
因此,我强烈建议使用Dictionary<TKey, TValue>
或实施IDictionary<TKey, TValue>
的东西。从理论上讲,我们可以添加API,允许您告诉它如何解释密钥和值(显然是在库中支持这项工作),但是我很怀疑实际上是否为为真正的好处。坦率地说,我不确定这几天(或过去多年)使用HybridDictionary
有什么用处。
实际上,直到2.3.0,protobuf网并没有真正支持直接Dictionary<TKey, TValue>
- 至少,不是你想象的方式:直到map<...,...>
功能已完全实现,它实际上锯是一个类似列表的东西,即可以解释为{some type}
序列的东西,以及Add({some type})
方法。在字典的情况下,{some type}
碰巧是KeyValuePair<TKey, TValue>
,其中转而可以被解释为元组类型(具有与构造函数完全匹配的成员,因此根据构造函数参数推断契约)。方便地,这与map<...,...>
使用的形状完全相同,所以这种方法可以与2.3.0(which is discussed more here)中优选的新方法互换(数据方式)。
相关问题
- 1. 是否支持MSNP9?
- 2. 是否支持DataGrid?
- 3. 是否支持ARC?
- 4. Firefox是否支持enablePrivilege(“UniversalBrowserRead”)?
- 5. Xcode 4.3是否支持distcc?
- 6. GCC是否支持C++ AMP
- 7. PySide是否支持Python 3?
- 8. AlertDialog是否支持WebView?
- 9. GWT是否支持php?
- 10. 是否正式支持android.speech.extra.DICTATION_MODE?
- 11. Android 4.0.3是否支持SIP?
- 12. 是否支持WSE 3.0?
- 13. logback是否支持log4j appenders?
- 14. py2app是否支持python3?
- 15. Freemarker是否支持MethodDescriptors?
- 16. JOGL是否支持NURBS?
- 17. System.Data.OracleClient是否支持oracle 11g?
- 18. Dapper是否支持枚举?
- 19. Azure是否支持AIX?
- 20. WCF + net.tcp是否支持3DES?
- 21. Xcode 4是否支持AVX?
- 22. Memecached是否支持PHP 7?
- 23. 是否由webgl支持texture2DRect?
- 24. NSIS是否支持IIS7?
- 25. Qt是否支持OpenMP?
- 26. aforge.net是否支持OCR?
- 27. Facebook是否支持oEmbed?
- 28. Swift是否支持WebRTC?
- 29. Epplus是否支持Excel 2013?
- 30. ARKit是否支持iPhone SE?