首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Protobuf-net有什么教程吗?

Protobuf-net有什么教程吗?
EN

Stack Overflow用户
提问于 2010-05-23 22:22:32
回答 2查看 10.5K关注 0票数 14

我一直在读有关protobuf-net的文章,它太棒了!

有没有我可以用到的教程?(更具体地说,用于泛型的Dictionary<TKey,TValue>和契约)

有什么与之相关的提示吗?

我可以简单地将它插入到我当前的代码库中吗?或者我需要做任何更改吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-05-24 04:27:12

Dictionary<TKey,TValue>在很大程度上应该是可以工作的(至少在"v1“中是这样的;我还没有为”v2“写过这个)。

我完全承认文档是...稀疏。浮现在脑海中的事情:

  • Getting Started (在维基百科中还有其他一些页面) help
  • my blog

  • trunk中有很多东西;"Examples“项目兼作单元测试,

  • 也是如此

目前我有很多事情要做(我刚换了工作,等等),但我的优先事项是:

  • 发布了一个稳定的"v2“测试版,至少是核心特性集
  • 改进了documentation

时间是我最大的敌人。但如果您有特定的场景,请随时联系我,我会尽快回复您的。

Re“我可以简单地插入吗?”;这取决于您的代码;-p

它需要某种方法来确定您想要序列化的每个成员的唯一编号。最简单的方法是通过属性;它支持[XmlElement(Order=n)][DataMember(Order=n)][ProtoMember(n)]中的任何一个。如果您已经有了其中至少一个(例如,LINQ-to-SQL包含[DataMember] ),那么它可能会简单地工作。

有自动推断数字的选项,但这是脆弱的,不建议这样做。只有当你知道你永远不需要添加更多的成员时才使用它(它按字母顺序排序,所以添加一个新的AardvarkCount会破坏所有的东西)。

在"v2“(未发布,但可以工作)中,您现在可以独立于类型处理元数据-即,您可以将protobuf-net与POCO、非属性类型一起使用。你也可以绕过构造函数等(WCF风格)。更灵活,如果你想要的话。当然,也支持属性方法。

票数 14
EN

Stack Overflow用户

发布于 2010-05-23 22:29:21

有趣的是,我刚刚用protobuf-net的链接回答了另一个问题。

我发现做起来相对简单,而且Marc通过电子邮件回复很快。(哈哈,如果我邀请别人给你发垃圾邮件,我很抱歉!)

对于文档,我确实提到过它有点稀疏。但这是我使用它的目的:

我有一个基于XML的消息传递系统,有点太冗长了。因此,我想用编码相同信息但更紧凑的东西来替换这些消息。Protobuf-net被证明非常适合这一点,我还没有用基于proto的模块替换我的基于xmlserialzer的模块。

这很简单。我完成了我的项目,用ProtoInclude替换了xml和类似的属性,当然我也用proto序列化程序替换了XmlInclude序列化程序。关于哪些类型可以序列化的一两个问题在Marc的帮助下得到了解决,代码重构也不是很多。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2892082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档