Exercício – Executar seu aplicativo Web localmente
Neste exercício, você vai:
- Execute seu aplicativo Web localmente e exiba-o em um navegador.
- Examine como o aplicativo Web é servido.
Executar o aplicativo Web e exibir em um navegador
Execute o aplicativo Web no Visual Studio Code e exiba-o em um navegador:
No Visual Studio Code, pressione F5 para executar o aplicativo.
Visual Studio Code:
- Dispara o comando
dotnet runda CLI do .NET que compila e executa o aplicativo. - Anexa o depurador ao aplicativo em execução.
Na primeira vez que o projeto é executado no Visual Studio Code, a solicitação Selecionar depurador é exibida.
- Dispara o comando
Na solicitação Selecionar depurador na Paleta de Comandos na parte superior da interface do usuário do Visual Studio Code, selecione C#. Na próxima solicitação, selecione a configuração de inicialização padrão (
C#: MyWebApp [Default Configuration]):
O navegador padrão é iniciado em
http://localhost:{PORT}, que exibe a resposta do aplicativo. O espaço reservado{PORT}é a porta aleatória atribuída na criação do aplicativo. Se você precisar alterar a porta devido a um conflito de porta local, altere a porta no arquivo Propriedades/launchSettings.json do projeto.A resposta exibida no navegador:
Feche a janela do navegador.
No Visual Studio:
- No menu Executar, selecione Parar Depuração.
- Pressione SHIFT+F5 no teclado.
Execute o aplicativo Web usando a CLI do .NET:
Em um terminal ou na linha de comando, navegue até o diretório de projeto MyWebApp que contém o arquivo MyWebApp.csproj.
Compile e execute o aplicativo com o seguinte comando:
dotnet runO projeto é criado, executado e mostra a seguinte saída na linha de comando:
C:\MyWebApp> dotnet run Building... info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5267 info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down.Como o número da porta na URL fornecida é definido aleatoriamente na configuração na criação do projeto, seu ponto de extremidade pode utilizar um número de porta diferente.
Abra um navegador para a URL gerada em sua própria saída de linha de comando, a resposta
Hello World!do aplicativo é exibida:
Para desligar o aplicativo, pressione Ctrl+C na linha de comando.
Como o aplicativo Web é servido
Quando o aplicativo é compilado e executado, as seguintes etapas ocorrem:
Compilação e configuração:
- O MSBuild é invocado para restaurar dependências e compilar o projeto. O MSBuild processa o arquivo de projeto MyWebApp.csproj e compila o código-fonte em um assembly.
- O aplicativo lê as configurações, incluindo as configurações especificadas em launchSettings.json para o perfil de inicialização padrão (o primeiro listado).
Configuração do host:
- O método
WebApplication.CreateBuilderem Program.cs configura o host da Web. Por padrão, esse método configura o Kestrel como o servidor Web. O Kestrel é um servidor Web multiplataforma para ASP.NET Core projetado para alto desempenho. - O Kestrel começa a escutar solicitações HTTP de entrada nas URLs configuradas, incluindo HTTPS, se especificado.
Tratamento de Solicitações:
- Quando uma solicitação é recebida, o Kestrel a encaminha para o pipeline de middleware do ASP.NET Core.
- O pipeline de middleware processa a solicitação por meio de uma série de componentes de middleware, que podem lidar com tarefas como autenticação, registro em log e roteamento.
- Se a solicitação corresponder a uma rota definida, o ponto de extremidade correspondente será executado. Nesse caso, o ponto de extremidade
app.MapGet("/", () => "Hello World!")lida com solicitações para a URL raiz e retorna a cadeia de caracteresHello World!.
Resposta:
- A resposta, que nesse caso é a cadeia de caracteres "Olá, Mundo!", é enviada de volta pelo pipeline de middleware para o Kestrel, que a envia de volta para o cliente.