grpc/src/csharp/Grpc.Tools
tony 3e70a163e2
Rewrite Grpc.Tools BUILD-INTEGRATION.md docs (#32075)
* Rewrite Grpc.Tools BUILD-INTEGRATION.md docs

* Minor edits to text

* various adjustments and typos for Grpc.Tools readme

* Updated with review suggestions

* Further refinements to the docs

* Add README for Grpc.Tools package

* Update BUILD-INTEGRATION.md

* Updated from review comments

Co-authored-by: Jan Tattermusch <jtattermusch@google.com>
2023-01-23 16:49:42 +01:00
..
Properties unify Grpc.Tools projects with other csproj projects 2020-06-30 08:30:29 +02:00
build Initial version of Grpc.Tools & Msbuild integration tests (#31638) 2023-01-09 14:29:47 +01:00
Common.cs make Grpc C# work on aarch64 linux (#25717) 2021-03-17 09:33:48 +01:00
CommonPlatformDetection.cs Remove C# implementation (individual packages will continue to be maintained through v2.46.x patches or moved to grpc-dotnet) (#29225) 2022-04-28 12:00:34 +02:00
DepFileUtil.cs Bring closer to master 2020-06-16 12:31:32 +02:00
GeneratorServices.cs Add support for Protobuf_ProtoRoot 2020-06-16 14:13:44 +02:00
Grpc.Tools.csproj Rewrite Grpc.Tools BUILD-INTEGRATION.md docs (#32075) 2023-01-23 16:49:42 +01:00
ProtoCompile.cs Grpc.Tools: Parse warnings from libprotobuf (fix #27502) (#30371) 2022-09-05 10:58:25 +02:00
ProtoCompilerOutputs.cs Add support for Protobuf_ProtoRoot 2020-06-16 14:13:44 +02:00
ProtoReadDependencies.cs C# Tooling: change the case to 'Protobuf' consistently 2019-03-22 01:17:14 -07:00
ProtoToolsPlatform.cs Use x86 protoc binaries on arm64 Windows (#32017) 2023-01-16 11:10:46 +01:00
README.md Rewrite Grpc.Tools BUILD-INTEGRATION.md docs (#32075) 2023-01-23 16:49:42 +01:00
SourceLink.csproj.include Remove C# implementation (individual packages will continue to be maintained through v2.46.x patches or moved to grpc-dotnet) (#29225) 2022-04-28 12:00:34 +02:00
implementation_notes.md Add internal documentation for Grpc.Tools MSBuild integration (#31784) 2022-12-22 09:50:40 +01:00

README.md

Grpc.Tools - Protocol Buffers/gRPC C# Code Generation Build Integration

This package provides C# tooling support for generating C# code from .proto files in .csproj projects:

  • It contains protocol buffers compiler and gRPC plugin to generate C# code.
  • It can be used in building both grpc-dotnet projects and legacy c-core C# projects.

The package is used to automatically generate the C# code for protocol buffer messages and gRPC service stubs from .proto files. These files:

  • are generated on an as-needed basis each time the project is built.
  • aren't added to the project or checked into source control.
  • are a build artifact usually contained in the obj directory.

This package is optional. You may instead choose to generate the C# source files from .proto files by running the protoc compiler manually or from a script.

Simple example

To add a .proto file to a project edit the projects .csproj file and add an item group with a <Protobuf> element that refers to the .proto file, e.g.

<ItemGroup>
    <Protobuf Include="Protos\greet.proto" />
</ItemGroup>

For more complex examples and detailed information on how to use this package see: BUILD-INTEGRATION.md