使用protobuf-net获取ProtoGen

3

我正在尝试使用protobuf对一些类进行序列化。我使用NuGet安装了protobuf-net,并使用属性正确地装饰了我的代码,一切都很顺利。

然而,最终消息将在C#中创建,但在其他环境中使用,因此我需要从C#创建.proto文件,或者更合理的是从.proto文件创建C#代码。

无论我做什么,我都找不到在计算机上安装的ProtoGen.exe。我还发现了这篇旧文章,但当我创建.proto文本文件时并没有类似的事情发生。手动添加ProtoBufTool也没有起作用。

我错过了什么?

1个回答

6

Protogen已经包含在v1/280版本中,或可以从项目网站获取单独的VS工具。没有方便的方法以任何明智的方式将其包含在nuget中(我与微软的工作人员核实过两次)。

对于protogen和VS插件,其功能在v2中并未更改,因此现有的v1二进制文件仍可用于v2。

如果ProtoBufTool无法正常工作,则......我不知道出了什么问题;是否出现任何错误消息/警告?经典的警告是关于输入文件的编码("protoc",Google的工具,非常挑剔)。


我尝试了v2,这就解释了为什么什么都没有发生(工具甚至没有运行,也没有任何错误)。我会尝试从v1获取它。谢谢。 - zmbq
嗨,简单问一下:这个信息是否最新?即,该工具现在是否已包含在NuGet中并可以正确安装?我不确定2017年获取Protogen的“正确”方式是什么,因为GitHub页面只会重定向到一个相当古老的博客文章,其中没有提供任何其他链接。 - vgru
@Groo,今天获取最简单的方法是使用http://protogen.marcgravell.com - 它可作为源代码获得,但我需要在打包它为NuGet上做些工作。 - Marc Gravell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接