Sure; dotnet-protobufs - это порт версии java, поэтому имеет очень похожий API и подход к основной реализации google; код-жемчуг, неизменность и т. д.
Protobuf-net байт совместим, но является полной версией с нуля, следуя стандартным .NET-идиомам - так знакомы пользователям XmlSerializer и т. д. Он также работает против изменчивых объекты (и неизменны в зависимости от настройки, и структуры в v2), а также имеет дополнительные крючки для WCF, удаленного доступа и т.д.
Оба они могут работать от .proto (возможно, DotNet-protobufs является лучше в этом, чем protobuf- сеть); но protobuf-net может работать против существующих .net poco/DTO и т. д. без .proto или любого кодегена.
Кроме того, protobuf-net предлагает такие функции, как поддержка наследования, но вы не можете использовать его в своем сценарии, поскольку он не так легко сопоставляется с определениями .proto.
Первый написан [Marc Gravell] (http://stackoverflow.com/users/23354/marc-gravell) (занимает 2 место в репутации здесь), а второй написан [Jon Skeet] (http://stackoverflow.com/users/22656/jon-skeet) (занял 1 место в рейтинге здесь). Несмотря на то, что я никогда не использовал ни одного из них, я бы сказал, что вы не ошибетесь в любом случае. –
Учитывая, что Джон Скит работает в Google, я сначала попробую его версию. – Gabe
Но что лучше? Есть только один способ узнать ... БОРЬБА! (это может иметь смысл, если вы знаете, кто такой Гарри Хилл - иначе это может показаться необычайно агрессивным ...) –