Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Ao executar dotnet run, a CLI seleciona um projeto .NET, restaura dependências NuGet se necessário, aciona o build e inicia o processo resultante. Dependendo do projeto, também aplica configurações de um perfil suportado em launchSettings.json. É um fluxo conveniente para desenvolvimento; para implantação em produção, a Microsoft recomenda publicar o aplicativo.

O que acontece depois de pressionar Enter?

  1. A CLI escolhe um projeto. Sem caminho informado, ela usa o projeto no diretório atual. Para apontar para outro, use --project. dotnet run opera no contexto de projetos, não para iniciar diretamente um assembly já compilado. Para executar uma DLL existente, use dotnet nome.dll. Consulte a documentação do comando dotnet run e a visão geral da CLI .NET.
  2. O restore NuGet ocorre se necessário. Não é obrigatório executar dotnet restore separadamente antes. A restauração resolve as dependências referenciadas pelo projeto, baixa as que faltam e as disponibiliza no cache local. --no-restore desativa essa etapa implícita; --force força a resolução das dependências. A documentação do dotnet restore explica a resolução de dependências pelo NuGet.
  3. O build compila o projeto e suas dependências. O comando depende de dotnet build, que usa MSBuild. A documentação descreve dotnet build como equivalente a dotnet msbuild -restore, embora a verbosidade padrão seja diferente. Isso não significa que dotnet run seja apenas um alias textual para build seguido de uma chamada universal: run tem opções e comportamento próprios. Veja a documentação de dotnet build e dotnet msbuild.
  4. Os artefatos são gravados nos diretórios do projeto. Por padrão, a saída do build vai para bin/<configuration>/<target>, normalmente bin/Debug/<target>; arquivos temporários ficam em obj. A configuração pode ser alterada, por exemplo, com --configuration Release. Saídas existentes podem ser sobrescritas conforme necessário.
  5. A CLI inicia o processo. Um perfil compatível em launchSettings.json pode definir o tipo de comando, argumentos e variáveis de ambiente usados na inicialização. dotnet run aceita perfis dos tipos Project e Executable. A opção --no-launch-profile ignora o arquivo.

Como escolher projeto e framework

Se o diretório atual não for o do projeto desejado, indique o arquivo ou diretório do projeto com --project. Se o projeto tiver como alvo vários frameworks, indique um deles com --framework; sem essa seleção, o comando falha por ambiguidade. A sintaxe exata e as opções disponíveis podem depender da versão do SDK instalada.

O que muda com –no-restore e –no-build?

  • --no-restore pula somente a restauração implícita. O build continua sendo executado.
  • --no-build pula o build e também implica --no-restore. Use-o apenas quando os artefatos necessários já existirem; caso contrário, não haverá uma saída atual para iniciar.

Como o programa recebe argumentos e variáveis de ambiente?

Use -- para separar as opções da CLI dos argumentos que devem chegar ao aplicativo. Por exemplo:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
dotnet run --project ConsoleApp.csproj -- --app-flag --app-name A.txt

As opções depois de -- são argumentos do programa, não opções de dotnet run. A separação ajuda a evitar que argumentos destinados ao aplicativo sejam interpretados pela CLI.

A opção --environment KEY=VALUE configura o ambiente do processo iniciado e, conforme a documentação da Microsoft, tem precedência sobre valores definidos pelo perfil. Ela foi adicionada no SDK 9.0.200; portanto, não está disponível em todos os SDKs. Outras opções também têm requisitos de versão: --artifacts-path foi adicionada no SDK 8, e --file, no SDK 10.0.100. Confira a versão exigida junto à opção na referência atual do dotnet run.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Quando usar dotnet run — e quando publicar

dotnet run é uma conveniência para executar código-fonte durante o desenvolvimento iterativo. Ele pode depender de pacotes no cache local e de configurações do ambiente de desenvolvimento; a Microsoft não o recomenda para executar aplicativos em produção. Para implantação, crie uma saída de publicação com dotnet publish e implante o resultado publicado.

O fluxo concreto pode variar conforme o projeto, o framework-alvo, o SDK instalado, o cache, as propriedades do MSBuild, o perfil de inicialização e as opções usadas. A documentação principal do comando cobre o .NET 6 SDK e posteriores, mas opções individuais podem exigir versões mais novas.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.