Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Note
Dies ist nicht die neueste Version dieses Artikels. Die aktuelle Version finden Sie in der .NET 10-Version dieses Artikels.
Warning
Diese Version von ASP.NET Core wird nicht mehr unterstützt. Weitere Informationen finden Sie in der .NET- und .NET Core-Supportrichtlinie. Die aktuelle Version finden Sie in der .NET 10-Version dieses Artikels.
dotnet-grpc ist ein .NET Global Tool zum Verwalten von Protobuf -Verweisen (.proto) innerhalb eines .NET gRPC-Projekts. Das Tool kann zum Hinzufügen, Aktualisieren, Entfernen und Auflisten von Protobuf-Verweisen verwendet werden.
Installation
Führen Sie den folgenden Befehl aus, um das dotnet-grpc.NET Global Tool zu installieren:
dotnet tool install -g dotnet-grpc
Note
Standardmäßig stellt die Architektur der zu installierenden .NET-Binärdateien die derzeit ausgeführte Betriebssystemarchitektur dar. Informationen zum Angeben einer anderen Betriebssystemarchitektur finden Sie unter dotnet tool install, --arch option. Weitere Informationen finden Sie unter dem GitHub-Issue dotnet/docs #29262.
Hinzufügen von Verweisen
dotnet-grpc kann verwendet werden, um Protobuf-Verweise als <Protobuf />-Elemente zur .csproj-Datei hinzuzufügen:
<Protobuf Include="Protos\greet.proto" GrpcServices="Server" />
Die Protobuf-Verweise werden zum Generieren der C#-Client- und/oder -Serverobjekte verwendet. Das dotnet-grpc-Tool kann Folgendes:
- Protobuf-Verweise aus lokalen Dateien auf dem Datenträger erstellen.
- Einen Protobuf-Verweis aus einer Remotedatei erstellen, die durch eine URL angegeben ist.
- Sicherstellen, dass die richtigen gRPC-Paketabhängigkeiten zum Projekt hinzugefügt werden.
Das Grpc.AspNetCore-Paket wird z. B. zu einer Web-App hinzugefügt.
Grpc.AspNetCore enthält gRPC-Server- und -Clientbibliotheken sowie Toolunterstützung. Alternativ werden die Pakete Grpc.Net.Client, Grpc.Tools und Google.Protobuf, die nur die gRPC-Clientbibliotheken und die Toolunterstützung enthalten, zu einer Konsolen-App hinzugefügt.
Datei hinzufügen
Der Befehl add-file wird verwendet, um lokale Dateien auf dem Datenträger als Protobuf-Verweise hinzuzufügen. Die bereitgestellten Dateipfade:
- Kann relativ zum aktuellen Verzeichnis oder zu absoluten Pfaden sein.
- Kann Platzhalter für musterbasiertes Datei-Globbing enthalten.
Wenn sich Dateien außerhalb des Projektverzeichnisses befinden, wird ein Link-Element hinzugefügt, um die Datei unter dem Ordner Protos in Visual Studio anzuzeigen.
Usage
dotnet-grpc add-file [options] <files>...
Arguments
| Argument | Description |
|---|---|
| files | Die Protobuf-Dateiverweise. Dies kann ein Pfad zu „Glob“ für lokale Protobuf-Dateien sein. |
Options
| Kurze Option | Lange Option | Description |
|---|---|---|
| -p | --project | Der Pfad zu der Projektdatei, mit der gearbeitet werden soll. Wenn keine Datei angegeben ist, sucht der Befehl im aktuellen Verzeichnis nach einer Projektdatei. |
| -s | --services | Der Typ der gRPC-Dienste, die generiert werden sollen. Wenn Default angegeben ist, wird Both für Webprojekte und Client für Nicht-Webprojekte verwendet. Zulässige Werte sind Both, Client, Default, None, Server. |
| -i | --additional-import-dirs | Zusätzliche Verzeichnisse, die bei der Auflösung von Importen für die Protobuf-Dateien verwendet werden. Dies ist eine durch Semikolons getrennte Liste von Pfaden. |
| --access | Der Zugriffsmodifizierer, der für die generierten C#-Klassen verwendet werden soll. Der Standardwert ist Public. Zulässige Werte sind Internal und Public. |
URL hinzufügen
Der Befehl add-url wird verwendet, um eine Remotedatei hinzuzufügen, die durch eine Quell-URL als Protobuf-Verweis angegeben wird. Es muss ein Dateipfad angegeben werden, um anzugeben, wo die Remotedatei heruntergeladen werden soll. Der Dateipfad kann relativ zum aktuellen Verzeichnis oder ein absoluter Pfad sein. Wenn der Dateipfad außerhalb des Projektverzeichnisses liegt, wird ein Link-Element hinzugefügt, um die Datei unter dem virtuellen Ordner Protos in Visual Studio anzuzeigen.
Usage
dotnet-grpc add-url [options] <url>
Arguments
| Argument | Description |
|---|---|
| url | Die URL zu einer Protobuf-Remotedatei. |
Options
| Kurze Option | Lange Option | Description |
|---|---|---|
| -o | --output | Gibt den Downloadpfad für die Protobuf-Remotedatei an. Diese Option muss angegeben werden. |
| -p | --project | Der Pfad zu der Projektdatei, mit der gearbeitet werden soll. Wenn keine Datei angegeben ist, sucht der Befehl im aktuellen Verzeichnis nach einer Projektdatei. |
| -s | --services | Der Typ der gRPC-Dienste, die generiert werden sollen. Wenn Default angegeben ist, wird Both für Webprojekte und Client für Nicht-Webprojekte verwendet. Zulässige Werte sind Both, Client, Default, None, Server. |
| -i | --additional-import-dirs | Zusätzliche Verzeichnisse, die bei der Auflösung von Importen für die Protobuf-Dateien verwendet werden. Dies ist eine durch Semikolons getrennte Liste von Pfaden. |
| --access | Der Zugriffsmodifizierer, der für die generierten C#-Klassen verwendet werden soll. Der Standardwert ist Publicsein. Zulässige Werte sind Internal und Public. |
Remove
Der Befehl remove wird verwendet, um Protobuf-Verweise aus der .csproj-Datei zu entfernen. Der Befehl akzeptiert Pfadargumente und Quell-URLs als Argumente. Das Tool:
- Es entfernt nur den Protobuf-Verweis.
- Es löscht nicht die
.proto-Datei, auch wenn sie ursprünglich von einer Remote-URL heruntergeladen wurde.
Usage
dotnet-grpc remove [options] <references>...
Arguments
| Argument | Description |
|---|---|
| references | Die URLs oder Dateipfade der zu entfernenden Protobuf-Verweise. |
Options
| Kurze Option | Lange Option | Description |
|---|---|---|
| -p | --project | Der Pfad zu der Projektdatei, mit der gearbeitet werden soll. Wenn keine Datei angegeben ist, sucht der Befehl im aktuellen Verzeichnis nach einer Projektdatei. |
Refresh
Der Befehl refresh wird verwendet, um einen Remoteverweis mit dem neuesten Inhalt von der Quell-URL zu aktualisieren. Sowohl der Pfad der Downloaddatei als auch die Quell-URL können zur Angabe des zu aktualisierenden Verweises verwendet werden. Note:
- Die Hashes des Dateiinhalts werden verglichen, um festzustellen, ob die lokale Datei aktualisiert werden sollte.
- Es werden keine Zeitstempelinformationen verglichen.
Das Tool ersetzt immer die lokale Datei durch die Remotedatei, wenn eine Aktualisierung erforderlich ist.
Usage
dotnet-grpc refresh [options] [<references>...]
Arguments
| Argument | Description |
|---|---|
| references | Die URLs oder Dateipfade zu Protobuf-Remoteverweisen, die aktualisiert werden sollten. Lassen Sie dieses Argument leer, um alle Remoteverweise zu aktualisieren. |
Options
| Kurze Option | Lange Option | Description |
|---|---|---|
| -p | --project | Der Pfad zu der Projektdatei, mit der gearbeitet werden soll. Wenn keine Datei angegeben ist, sucht der Befehl im aktuellen Verzeichnis nach einer Projektdatei. |
| --dry-run | Gibt eine Liste von Dateien aus, die ohne Herunterladen neuer Inhalte aktualisiert werden würden. |
List
Der Befehl list wird verwendet, um alle Protobuf-Verweise in der Projektdatei anzuzeigen. Wenn alle Werte einer Spalte Standardwerte sind, kann die Spalte ausgelassen werden.
Usage
dotnet-grpc list [options]
Options
| Kurze Option | Lange Option | Description |
|---|---|---|
| -p | --project | Der Pfad zu der Projektdatei, mit der gearbeitet werden soll. Wenn keine Datei angegeben ist, sucht der Befehl im aktuellen Verzeichnis nach einer Projektdatei. |