| # 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 project’s `.csproj` file and add an item group with a `<Protobuf>` element that refers to the `.proto` file, e.g. |
| |
| ```xml |
| <ItemGroup> |
| <Protobuf Include="Protos\greet.proto" /> |
| </ItemGroup> |
| ``` |
| |
| For more complex examples and detailed information on how to use this package see: [BUILD-INTEGRATION.md](https://github.com/grpc/grpc/blob/master/src/csharp/BUILD-INTEGRATION.md) |