Partilhar via


Gerencie referências do Protobuf com dotnet-grpc

Note

Esta não é a versão mais recente deste artigo. Para a versão atual, consulte a versão .NET 10 deste artigo.

Warning

Esta versão do ASP.NET Core não é mais suportada. Para obter mais informações, consulte a Política de suporte do .NET e do .NET Core. Para a versão atual, consulte a versão .NET 10 deste artigo.

dotnet-grpc é uma ferramenta global .NET para gerenciar referências Protobuf (.proto) dentro de um projeto .NET gRPC. A ferramenta pode ser usada para adicionar, atualizar, remover e listar referências do Protobuf.

Installation

Para instalar a dotnet-grpc.NET Global Tool, execute o seguinte comando:

dotnet tool install -g dotnet-grpc

Note

Por padrão, a arquitetura dos binários do .NET a serem instalados representa a arquitetura do sistema operacional em execução no momento. Para especificar uma arquitetura de sistema operativo diferente, consulte dotnet tool install, opção --arch. Para obter mais informações, consulte o issue do GitHub dotnet/AspNetCore.Docs #29262.

Adicionar referências

dotnet-grpc pode ser usado para adicionar referências Protobuf como <Protobuf /> itens ao .csproj ficheiro:

<Protobuf Include="Protos\greet.proto" GrpcServices="Server" />

As referências Protobuf são usadas para gerar os ativos do cliente e/ou servidor C#. A dotnet-grpc ferramenta pode:

  • Crie uma referência Protobuf a partir de arquivos locais no disco.
  • Crie uma referência Protobuf a partir de um arquivo remoto especificado por uma URL.
  • Certifique-se de que as dependências corretas do pacote gRPC sejam adicionadas ao projeto.

Por exemplo, o Grpc.AspNetCore pacote é adicionado a um aplicativo Web. Grpc.AspNetCore contém bibliotecas para servidor e cliente gRPC e suporte de ferramentas. Como alternativa, os pacotes Grpc.Net.Client, Grpc.Tools e Google.Protobuf, que contêm apenas as bibliotecas de cliente gRPC e suporte a ferramentas, são adicionados a uma aplicação de consola.

Adicionar ficheiro

O comando add-file é usado para adicionar ficheiros locais no disco como referências Protobuf. Os caminhos de arquivo fornecidos:

  • Pode ser relativo ao diretório atual ou ser caminhos absolutos.
  • Pode conter caracteres universais para o globbing de ficheiros baseado em padrões.

Se algum arquivo estiver fora do diretório do projeto, um Link elemento será adicionado para exibir o arquivo na pasta Protos no Visual Studio.

Usage

dotnet-grpc add-file [options] <files>...

Arguments

Argument Description
files As referências do ficheiro protobuf. Estes podem constituir um caminho para glob para ficheiros locais protobuf.

Opções

Opção curta Opção longa Description
-p --projeto O caminho para o arquivo de projeto para operar. Se um arquivo não for especificado, o comando procurará um no diretório atual.
-s --serviços O tipo de serviços gRPC que devem ser gerados. Se Default for especificado, Both é usado para projetos Web e Client é usado para projetos não-Web. Os valores aceites são Both, Client, Default, None, Server.
-i --diretórios-de-importação-adicionais Diretórios adicionais a serem usados ao resolver importações para os arquivos protobuf. Esta é uma lista de caminhos separados por ponto-e-vírgula.
--acesso O modificador de acesso a ser usado para as classes C# geradas. O valor predefinido é Public. Os valores aceites são Internal e Public.

Adicionar URL

O add-url comando é usado para adicionar um arquivo remoto especificado por um URL de origem como referência Protubuf. Um caminho de arquivo deve ser fornecido para especificar onde baixar o arquivo remoto. O caminho do arquivo pode ser relativo ao diretório atual ou um caminho absoluto. Se o caminho do arquivo estiver fora do diretório do projeto, um Link elemento será adicionado para exibir o arquivo na pasta Protos virtual no Visual Studio.

Usage

dotnet-grpc add-url [options] <url>

Arguments

Argument Description
url O URL para um ficheiro protobuf remoto.

Opções

Opção curta Opção longa Description
-o --output Especifica o caminho de download para o arquivo protobuf remoto. Esta é uma opção necessária.
-p --projeto O caminho para o arquivo de projeto para operar. Se um arquivo não for especificado, o comando procurará um no diretório atual.
-s --serviços O tipo de serviços gRPC que devem ser gerados. Se Default for especificado, Both é usado para projetos Web e Client é usado para projetos não-Web. Os valores aceites são Both, Client, Default, None, Server.
-i --diretórios-de-importação-adicionais Diretórios adicionais a serem usados ao resolver importações para os arquivos protobuf. Esta é uma lista de caminhos separados por ponto-e-vírgula.
--acesso O modificador de acesso a ser usado para as classes C# geradas. O valor predefinido é Public. Os valores aceites são Internal e Public.

Remove

O remove comando é usado para remover referências Protobuf do .csproj arquivo. O comando aceita argumentos de caminho e URLs de origem como argumentos. A ferramenta:

  • Apenas remove a referência ao Protobuf.
  • Não elimina o .proto ficheiro, mesmo que tenha sido originalmente transferido a partir de um URL remoto.

Usage

dotnet-grpc remove [options] <references>...

Arguments

Argument Description
references As URLs ou os caminhos de arquivo das referências protobuf para remover.

Opções

Opção curta Opção longa Description
-p --projeto O caminho para o arquivo de projeto para operar. Se um arquivo não for especificado, o comando procurará um no diretório atual.

Refresh

O refresh comando é usado para atualizar uma referência remota com o conteúdo mais recente do URL de origem. Tanto o caminho do arquivo de download quanto o URL de origem podem ser usados para especificar a referência a ser atualizada. Note:

  • Os hashes do conteúdo do arquivo são comparados para determinar se o arquivo local deve ser atualizado.
  • Nenhuma informação de carimbo de data/hora é comparada.

A ferramenta sempre substitui o arquivo local pelo arquivo remoto se uma atualização for necessária.

Usage

dotnet-grpc refresh [options] [<references>...]

Arguments

Argument Description
references As URLs ou caminhos de arquivo para referências protobuf remotas que devem ser atualizadas. Deixe esse argumento vazio para atualizar todas as referências remotas.

Opções

Opção curta Opção longa Description
-p --projeto O caminho para o arquivo de projeto para operar. Se um arquivo não for especificado, o comando procurará um no diretório atual.
--ensaio a seco Gera uma lista de arquivos que seriam atualizados sem baixar nenhum novo conteúdo.

List

O list comando é usado para exibir todas as referências Protobuf no arquivo de projeto. Se todos os valores de uma coluna forem valores padrão, a coluna pode ser omitida.

Usage

dotnet-grpc list [options]

Opções

Opção curta Opção longa Description
-p --projeto O caminho para o arquivo de projeto para operar. Se um arquivo não for especificado, o comando procurará um no diretório atual.

Recursos adicionais