Gestire i riferimenti Protobuf con dotnet-grpc
Nota
Questa non è la versione più recente di questo articolo. Per la versione corrente, vedere la versione .NET 8 di questo articolo.
Avviso
Questa versione di ASP.NET Core non è più supportata. Per altre informazioni, vedere Criteri di supporto di .NET e .NET Core. Per la versione corrente, vedere la versione .NET 8 di questo articolo.
Importante
Queste informazioni si riferiscono a un prodotto non definitive che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Per la versione corrente, vedere la versione .NET 8 di questo articolo.
dotnet-grpc
è uno strumento globale .NET Core per la gestione dei riferimenti Protobuf (.proto
) all'interno di un progetto gRPC .NET. Lo strumento può essere usato per aggiungere, aggiornare, rimuovere ed elencare i riferimenti Protobuf.
Installazione
Per installare lo dotnet-grpc
strumento globale .NET Core, eseguire il comando seguente:
dotnet tool install -g dotnet-grpc
Nota
Per impostazione predefinita, l'architettura dei file binari .NET da installare rappresenta l'architettura del sistema operativo attualmente in esecuzione. Per specificare un'architettura del sistema operativo diversa, vedere dotnet tool install, --opzione arch.. Per altre informazioni, vedere Problema di GitHub dotnet/AspNetCore.Docs #29262.
Aggiungere riferimenti
dotnet-grpc
può essere usato per aggiungere riferimenti Protobuf come <Protobuf />
elementi al .csproj
file:
<Protobuf Include="Protos\greet.proto" GrpcServices="Server" />
I riferimenti Protobuf vengono usati per generare gli asset client e/o server C#. Lo dotnet-grpc
strumento può:
- Creare un riferimento Protobuf dai file locali su disco.
- Creare un riferimento Protobuf da un file remoto specificato da un URL.
- Verificare che le dipendenze del pacchetto gRPC corrette vengano aggiunte al progetto.
Ad esempio, il Grpc.AspNetCore
pacchetto viene aggiunto a un'app Web. Grpc.AspNetCore
contiene le librerie client e il server gRPC e il supporto degli strumenti. In alternativa, i Grpc.Net.Client
pacchetti , Grpc.Tools
e Google.Protobuf
, che contengono solo le librerie client gRPC e il supporto degli strumenti, vengono aggiunti a un'app console.
Aggiungere file
Il add-file
comando viene usato per aggiungere file locali su disco come riferimenti Protobuf. I percorsi dei file forniti:
- Può essere relativo alla directory corrente o ai percorsi assoluti.
- Può contenere caratteri jolly per il globing di file basato su criteri.
Se i file si trovano all'esterno della directory del progetto, viene aggiunto un Link
elemento per visualizzare il file nella cartella Protos
in Visual Studio.
Utilizzo
dotnet-grpc add-file [options] <files>...
Argomenti
Argomento | Descrizione |
---|---|
files | Riferimenti al file protobuf. Può trattarsi di un percorso di glob per i file protobuf locali. |
Opzioni
Opzione breve | Opzione Lunga | Descrizione |
---|---|---|
-p | --progetto | Percorso del file di progetto su cui operare. Se non viene specificato un file, il comando ne cerca uno nella directory corrente. |
-s | --servizi | Tipo di servizi gRPC da generare. Se Default viene specificato, Both viene utilizzato per i progetti Web e Client viene usato per i progetti non Web. I valori accettati sono Both , Client , Default , None , . Server |
-i | --additional-import-dirs | Directory aggiuntive da usare per la risoluzione delle importazioni per i file protobuf. Si tratta di un elenco di percorsi delimitato da punto e virgola. |
--accesso | Modificatore di accesso da usare per le classi C# generate. Il valore predefinito è Public . I valori accettati sono Internal e Public . |
Aggiungere URL
Il add-url
comando viene usato per aggiungere un file remoto specificato da un URL di origine come riferimento Protobuf. È necessario specificare il percorso di un file per specificare dove scaricare il file remoto. Il percorso del file può essere relativo alla directory corrente o a un percorso assoluto. Se il percorso del file si trova all'esterno della directory del progetto, viene aggiunto un Link
elemento per visualizzare il file nella cartella Protos
virtuale in Visual Studio.
Utilizzo
dotnet-grpc add-url [options] <url>
Argomenti
Argomento | Descrizione |
---|---|
URL. | URL di un file protobuf remoto. |
Opzioni
Opzione breve | Opzione Lunga | Descrizione |
---|---|---|
-o | --output | Specifica il percorso di download per il file protobuf remoto. Si tratta di un'opzione obbligatoria. |
-p | --progetto | Percorso del file di progetto su cui operare. Se non viene specificato un file, il comando ne cerca uno nella directory corrente. |
-s | --servizi | Tipo di servizi gRPC da generare. Se Default viene specificato, Both viene utilizzato per i progetti Web e Client viene usato per i progetti non Web. I valori accettati sono Both , Client , Default , None , . Server |
-i | --additional-import-dirs | Directory aggiuntive da usare per la risoluzione delle importazioni per i file protobuf. Si tratta di un elenco di percorsi delimitato da punto e virgola. |
--accesso | Modificatore di accesso da usare per le classi C# generate. Il valore predefinito è Public . I valori accettati sono Internal e Public . |
Rimuovi
Il remove
comando viene usato per rimuovere i riferimenti Protobuf dal .csproj
file. Il comando accetta argomenti di percorso e URL di origine come argomenti. Lo strumento :
- Rimuove solo il riferimento Protobuf.
- Non elimina il
.proto
file, anche se è stato originariamente scaricato da un URL remoto.
Utilizzo
dotnet-grpc remove [options] <references>...
Argomenti
Argomento | Descrizione |
---|---|
references | URL o percorsi di file dei riferimenti protobuf da rimuovere. |
Opzioni
Opzione breve | Opzione Lunga | Descrizione |
---|---|---|
-p | --progetto | Percorso del file di progetto su cui operare. Se non viene specificato un file, il comando ne cerca uno nella directory corrente. |
Refresh
Il refresh
comando viene usato per aggiornare un riferimento remoto con il contenuto più recente dall'URL di origine. Sia il percorso del file di download che l'URL di origine possono essere usati per specificare il riferimento da aggiornare. Nota:
- Gli hash del contenuto del file vengono confrontati per determinare se il file locale deve essere aggiornato.
- Non viene confrontata alcuna informazione sul timestamp.
Lo strumento sostituisce sempre il file locale con il file remoto se è necessario un aggiornamento.
Utilizzo
dotnet-grpc refresh [options] [<references>...]
Argomenti
Argomento | Descrizione |
---|---|
references | URL o percorsi di file per riferimenti protobuf remoti che devono essere aggiornati. Lasciare vuoto questo argomento per aggiornare tutti i riferimenti remoti. |
Opzioni
Opzione breve | Opzione Lunga | Descrizione |
---|---|---|
-p | --progetto | Percorso del file di progetto su cui operare. Se non viene specificato un file, il comando ne cerca uno nella directory corrente. |
--dry-run | Restituisce un elenco di file che verrebbero aggiornati senza scaricare alcun nuovo contenuto. |
List
Il list
comando viene usato per visualizzare tutti i riferimenti Protobuf nel file di progetto. Se tutti i valori di una colonna sono valori predefiniti, la colonna può essere omessa.
Utilizzo
dotnet-grpc list [options]
Opzioni
Opzione breve | Opzione Lunga | Descrizione |
---|---|---|
-p | --progetto | Percorso del file di progetto su cui operare. Se non viene specificato un file, il comando ne cerca uno nella directory corrente. |