Hallo,
ich habe mir gerade GRPC angesehen und dabei die Beispiele gemacht. Jetzt ist meine Frage wie dann selber so ein Projekt mit einer PROTO-Datei erstelle? Ich hab im Web nähmich nichts gefunden. Ich hoffe das mir jemand helfen kann.
LG BierDav
Trifft eine Programmiererin ihre Freundin und die Freundin fragt: "Mit welchen Typen hängst du so in letzter Zeit rum?" Die Programmiererin antwortet: „integers, booleans und strings“
Ganz wichtig: es heisst gRPC und nicht GRPC.
Wenn Du im Titel gRPC schreibst, weiß man sofort, was gemeint ist; anders eher nicht.
gRPC ist ein extrem gut dokumentiertes Ökosystem.
Solltest Du etwas hier nicht finden, dann ist das ein sehr großer Hinweis, dass Du nicht genau genug suchst 😉
Dazu zeigt auch der von Dir verlinkte Link deutlich:
You can see the complete .proto file in examples/protos/route_guide.proto
und verweist auf https://github.com/grpc/grpc/blob/v1.18.0/examples/protos/route_guide.proto
Es werden ja auch zig funktionierende Real-World-Samples auf GitHub gezeigt, wo Du alle Bestandteile eines gRPC Service sehen und entnehmen kannst.
Daher: was genau fehlt Dir denn? In der Doku und in den Samples steht eigentlich alles für den Start.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Die Beispiele sind sehr gut. Die Proto Dateien kann mit VSCode mit einem Plugin für Syntax-Highlighting erstellen.
Ich implementiere nur das Aufrufen des Proto Compilers als Pre-Build Event in Visual Studio, so daß der Build ohne Command Line auskommt:
cd $(ProjectDir)
$(SolutionDir)packages\Grpc.Tools.1.18.0\tools\windows_x86\protoc.exe xxx.proto --csharp_out=$(ProjectDir) --grpc_out=$(ProjectDir) --plugin=protoc-gen-grpc=$(SolutionDir)packages\Grpc.Tools.1.18.0\tools\windows_x64\grpc_csharp_plugin.exe
Ich glaube ihr habt das falsch verstanden im meine wenn ich jetzt selber einen gRCP Server in VS Programmieren möchte. Also muss ich da in VS gehen "neues Projekt" ...
Oder wie mache ich sowas das sich dann compiliert und ich es dann verwenden kann.
Das meine ich. Kann mir hier wer helfen?
LG BierDav
Trifft eine Programmiererin ihre Freundin und die Freundin fragt: "Mit welchen Typen hängst du so in letzter Zeit rum?" Die Programmiererin antwortet: „integers, booleans und strings“
Im VS brauchst Du zwei Projekte.
Ein Class Library Projekt, in dem Du die Proto Datei hast. Mit der neuen Version der Tools musst Du die Proto Datei nur als Element in VS hinzufügen ("Add existiting item) - dann gRPC, gRPC Tools und Protobuf Nuget Paket hinzufügen und kompilieren.
Das zweite Projekt ist dann eine Consolen-Anwendung, die das Class Library Projekt referenziert und die gRPC und Protobuf Nuget Pakete referenziert. Du startest dann dort wie im Beispiel den Server.
In der Server Implementierung erbst Du von der Class Library die Server Implementierung und überschreibst die Methoden für die Funktionsaufrufe.
Danke weismat,
aber Entschuldigung das ich da so nach hacke was für Tools hast du da gemeint?
LG David
Trifft eine Programmiererin ihre Freundin und die Freundin fragt: "Mit welchen Typen hängst du so in letzter Zeit rum?" Die Programmiererin antwortet: „integers, booleans und strings“
Kommunikationsimplementierungen haben nichts mit der genutzten Technologie am Hut.
Das heisst, dass auch gRPC ganz normal in Klassenbibliotheken umgesetzt werden. Ob dieser Service nachher ein einer WebApp, DesktopApp oder mobilen Anwendung genutzt wird: völlig egal.
Natürlich gibt es daher auch keine speziellen "gRPC Visual Studio Projekte".
So funktioniert das Ökosystem einfach nicht 😃
Siehe auch Basics: [Artikel] Drei-Schichten-Architektur
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Danke,
Ihr hab mir sehr geholfen.
LG BierDav
Trifft eine Programmiererin ihre Freundin und die Freundin fragt: "Mit welchen Typen hängst du so in letzter Zeit rum?" Die Programmiererin antwortet: „integers, booleans und strings“