Visual Studio 2015
C#
NuGet Packages :
Google.Protobuf v3.0.0
Google.Protobuf.Tools v3.0.0
消息类型Quake
syntax = "proto3";
import "google/protobuf/timestamp.proto";
message Quake {
google.protobuf.Timestamp _timestamp = 1;
double magnitude = 2;
}
timestamp.proto
包含在同一文件夹中
protoc 3.0.2
命令行编译成功
但是 VS 右键单击 proto 文件并选择“运行自定义工具”失败,并显示错误“自定义工具‘ProtoBufTool’失败。”
从 Visual Studio 中生成 C# 类?
当 Protobuf 文档解释如何执行 protoc.exe 时,它似乎很短(薄弱)。以下是我在正在编写的一个小型测试项目中的做法。我为我的 Protobuf 项目安装了两个 NuGet 包:
Google.Protobuf (C# runtime library for Protocol Buffers)
Google.Protobuf.Tools (protoc.exe)
在 Visual Studio 中,我定义了一个预构建事件命令行。这是在项目的属性菜单中定义的:
..\..\..\packages\Google.Protobuf.Tools.3.6.0\tools\windows_x64\protoc -I="$(ProjectDir)."
--csharp_out=$(ProjectDir)Model $(ProjectDir)MyOwn.proto
生成的 MyOwn.cs 文件位于子目录“Model”中。它必须手动包含在项目中,才能自动编译。我今天就是这样做的。我希望这可以帮助别人。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)