MSBuild Task for protobuf-net.
This contains the build task DLL and targets file.
This is a library for manipulating Visual Studio project file with necessary stuff for using ProtoBuf.MSBuildTask.
This is a GUI program that calls the library ProtoBuf.Project to manipulate Visual Studio project file.
- Visual Studio 2010, 2012 or 2013, Professional or Express.
- .NET 4 Full
- ProtoGen binaries from protobuf-net, 1.0.0.280
- Call ProtoGen binaries to convert
.protofiles into a.cs
- Visual Studio
- MSBuild command line
- SharpDevelop, however, without code completion function
You are recommended to use our GUI program to manipulate the project file.
It allows you to initialize the project with ProtoBuf MSBuild targets and properties.
It automatically selects the required build action when adding new .proto files.
- Copy
ProtoBuf.MSBuildTask.dllandProtoBuf.MSBuildTask.targetsto your project in a separate directory. - Launch
ProtoBuf.ProjectInserter.WinFormsprogram. - Open project, pick the C# project you wish to enable
ProtoBuf.MSBuildTask. - Initialize project, pick the directories to
ProtoBuf.MSBuildTaskandProtoGenbinaries respectively. Please putProtoBuf.MSBuildTaskfiles andProtoGenbinaries in locations that are reachable from your repository. Relative path of the directories to these files are saved to the project file. If these files are located in another drive, Absolute path will be saved. - Add ProtoBuf files, pick one or more files to add.
- Save project.
If you wish to manually add new .proto files to the project in Visual Studio or SharpDevelop,
remember to select Build Action: ProtoBuf and enter Custom Tool: MSBuild:Compile.
Note: Protocol files must reside in project directory or its subdirectories. ProtoGen does not support upper level such as ..\x.proto.
Development happens on github. You are welcome to open pull requests or file issues.
ProtoBuf.MSBuildTask is licensed under MIT License.
This means you can use the library from any program, proprietary or open source.
See License.txt file for the full license text.