Home > Article > Backend Development > Using gRPC in C#
Due to NuGet, C# is very simple to configure the project.
1. Add ProtocolBuffer and gRPC reference in NuGet
protocol buffer 3.0 version, select Include Prerelease in the NuGet plug-in interface, and look for google protocol buffer.
If you do not select include rerelease, the protocol buffer found is 2.4 and cannot be compiled
2. Define proto
Design proto protocol file, including service agreement and data. gRPC must use protocol buffer3.0 version, so syntax is set to proto3.
Greeter is the service name
HelloRequest is the request data
HelloReply is the reply data
syntax = "proto3";option java_multiple_files = true;option java_package = "io.grpc.examples.helloworld"; option java_outer_classname = "HelloWorldProto";option objc_class_prefix = "HLW"; package helloworld; // The greeting service definition. service Greeter { // Sends a greeting rpc SayHello (HelloRequest) returns (HelloReply) {} } // The request message containing the user's name.message HelloRequest { string name = 1; } // The response message containing the greetingsmessage HelloReply { string message = 1; }
3. Generate proto access class
After defining the proto file, pass protocol buffer3.0 The provided protoc.exe tool generates access classes. Here, the C# plug-in grpc_csharp_plugin.exe of protoc defined by gRPC is used instead of protoGen.exe.
Put the following files in the same folder:
grpc_csharp_plugin.exehelloworld.protoprotoc.exe
Create a bat file and write the following command line:
protoc.exe -I=. --csharp_out=. --grpc_out=. --plugin=protoc-gen-grpc=grpc_csharp_plugin.exe helloworld.proto
Execute the bat file and get the access class of proto:
helloworld.cshelloworldGrpc.cs
4. Create a C# project
Add two access class files to the C# project, copy the C# example of gRPC to Program.cs, and compile it successfully.
The above is the content of using gRPC in C#. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!