Grâce à NuGet, C# est très simple pour configurer le projet.
1. Ajoutez des références ProtocolBuffer et gRPC dans NuGet
version protocol buffer 3.0, sélectionnez Inclure la version préliminaire dans l'interface du plug-in NuGet et recherchez le tampon de protocole Google.
Si vous ne sélectionnez pas inclure la réédition, le tampon de protocole trouvé est 2.4 et ne peut pas être compilé
2 Définir le proto
Concevoir le fichier de protocole de proto, y compris l'accord de service et les données. gRPC doit utiliser la version protocol buffer3.0, la syntaxe est donc définie sur proto3.
Greeter est le nom du service
HelloRequest est les données de la demande
HelloReply est les données de réponse
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. Générer une classe d'accès proto
Après avoir défini le fichier proto. , passe protocol buffer3 L'outil protoc.exe fourni par .0 génère des classes d'accès. Ici, le plug-in C# grpc_csharp_plugin.exe du protocole défini par gRPC est utilisé à la place de protoGen.exe.
Mettez les fichiers suivants dans le même dossier :
grpc_csharp_plugin.exehelloworld.protoprotoc.exe
Créez un fichier bat et écrivez la ligne de commande suivante :
protoc.exe -I=. --csharp_out=. --grpc_out=. --plugin=protoc-gen-grpc=grpc_csharp_plugin.exe helloworld.proto
Exécutez le fichier bat pour obtenir la classe proto Access :
helloworld.cshelloworldGrpc.cs
4. Créez un projet C#
Ajoutez deux fichiers de classe d'accès au projet C#, copiez l'exemple C# de gRPC dans Program.cs et compilez-le avec succès.
Ce qui précède est le contenu de l'utilisation de gRPC en C#. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !