Unlike messages, protoc does not natively support code autogen for services. To create stubs for services, the grpc C# plugin is required.
First, install the Grpc.Tools NuGet package from inside Visual Studio.
Then navigate to <NuGetPackageInstallDir>/GrpcTools.x.xx.x/tools/<yourOS>
If you wish, the grpc_csharp_plugin.exe can be moved to a more permanent/accessible location
Two additional commands are required for the plugin to work.
To make protoc aware of the plugin, include this command when invoking protoc:
An output for the files must also be specified like so:
Users who opt to manually generate their message and service C# code stubs may opt to uninstall the GRPC.Tools NuGet package after completing these steps
Additional examples and tips can be found here:
https://groups.google.com/g/grpc-io/c/l6bZwTLbDb4/m/t7LtKHU_AgAJ
https://stackoverflow.com/questions/50687335/how-to-use-the-grpc-tools-to-generate-code