Exercício – Criar um projeto de aplicativo Web ASP.NET Core a partir de um modelo
Neste exercício, você vai:
- Criar um projeto de aplicativo Web ASP.NET Core a partir de um modelo.
- Examine a estrutura do projeto criado.
Criar um aplicativo Web ASP.NET Core usando um modelo
No Visual Studio Code, crie um projeto:
Selecione o modo de exibição do Explorer:
Selecione o botão Criar projeto .NET. Como alternativa, você pode abrir a Paleta de comandos usando Ctrl+Shift+P e digitar "
.NET" para encontrar e selecionar o comando .NET: Novo projeto.
Selecione o modelo de projeto vazio do ASP.NET Core na lista.
Na caixa de diálogo Local do Projeto, crie uma pasta chamada
MyWebApppara conter o projeto.Na Paleta de Comandos, nomeie o projeto
MyWebApp, incluindo a correspondência da capitalização. Usar este nome exato do projeto é importante para garantir que os namespaces de código nesta instrução correspondam aos seus.Selecione Criar projeto na Paleta de Comandos.
Examine a estrutura do projeto
O conteúdo da pasta de projeto do MyWebApp é exibido no doExplorer do Visual Studio Code:
Em um terminal ou na linha de comando, crie um projeto:
Altere para o diretório (
cd) que conterá o projeto.Crie um aplicativo Web ASP.NET Core em um diretório chamado MyWebApp executando o comando da CLI do .NET
dotnet new:dotnet new web -o MyWebAppUm novo projeto da Web vazio do ASP.NET Core é criado em um diretório chamado MyWebApp.
O seguinte descreve a sintaxe de comando:
-
dotnet new: Um comando da CLI do .NET para criar vários artefatos de desenvolvimento do .NET com base em modelos como projetos, soluções, bibliotecas, configuração e outros arquivos especializados. -
web: Um modelo de projeto usado para criar um projeto da Web vazio do ASP.NET Core, sem conteúdo de exemplo.webé um dos muitos modelos de projeto internos disponíveis no SDK do .NET. -
-o: A opção de saída especifica o diretório em que o novo projeto é criado:- Se o diretório não existir, a CLI do .NET o criará.
- O diretório em que o projeto é criado serve como o nome do projeto padrão, o namespace e o nome do assembly (o nome da saída compilada).
- Se a opção de saída
-o <directory>não for usada, o diretório atual será usado.
-
Abra a pasta de projeto MyWebApp.
Examine a estrutura do projeto
O conteúdo da pasta de projeto do MyWebApp é exibido no doExplorer do Visual Studio Code:
As seções a seguir contêm uma visão geral das pastas de projeto principais e arquivos do projeto ASP.NET Core vazio:
O arquivo do projeto MyWebApp.csproj
O arquivo de projeto .csproj é usado para:
- Configurar como criar o projeto
- Especificar qual versão do .NET será direcionada
- Gerenciar as dependências do projeto
O arquivo de solução .sln
Quando um projeto do ASP.NET Core é criado ou aberto no Visual Studio Code (com a extensão C# Dev Kit), ele cria um arquivo de solução [nome do projeto].sln. O arquivo de solução [nome do projeto].sln contém informações para um ou mais projetos relacionados, incluindo informações de compilação, configurações e todos os arquivos diversos que não estão associados a apenas um projeto específico.
A pasta de obj
A pasta de obj contém arquivos intermediários que são usados pelo sistema de compilação, inclusive arquivos de objeto compilados gerados dos arquivos de origem. A saída final da compilação é colocada em uma pasta de bin criada durante o processo de compilação.
O arquivo Propriedades/launchSettings.json
O arquivo Properties/launchSettings.json contém dados de configuração de como o aplicativo é iniciado durante o desenvolvimento. Estas configurações incluem a propriedade applicationUrl, que especifica o URL raiz que o aplicativo usa, como https://localhost:{port}, em que {port} é um número de porta local aleatório atribuído quando o projeto é criado.
O arquivo launchSettings.json contém a seguinte configuração:
{
"$schema": "https://json.schemastore.org/launchsettings.json",
"profiles": {
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:5218",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:7140;http://localhost:5218",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
Abra o arquivo Program.cs
O arquivo Program.cs serve como ponto de entrada para um aplicativo ASP.NET Core e tem várias finalidades principais, que incluem:
- Configuração do host: Configura o host, inclusive a configuração do servidor Web.
- Registro de serviço: Adiciona serviços à funcionalidade do aplicativo, como contextos de banco de dados, registro em log e serviços especializados para estruturas específicas.
- Configuração do pipeline de middleware: Define o pipeline de tratamento de solicitações do aplicativo como uma série de instâncias de middleware.
- Configuração do ambiente: Define configurações específicas do ambiente para desenvolvimento, preparo e produção.
No novo projeto vazio do ASP.NET Core criado, o arquivo Program.cs contém o seguinte código mínimo:
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
app.MapGet("/", () => "Hello World!");
app.Run();
As seguintes linhas de código neste arquivo criam um WebApplicationBuilder com padrões pré-configurados e criam o aplicativo:
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
O método app.MapGet() define diretamente um ponto de extremidade que manipula solicitações HTTP GET:
app.MapGet("/", () => "Hello World!");
app.MapGet("/"): Define uma rota para a solicitação HTTP GET. O / indica que essa rota responde às solicitações feitas ao URL raiz do aplicativo. Por exemplo, http://localhost:{port}/, em que {port} é um número de porta atribuído aleatoriamente no arquivo Propriedades/launchSettings.json na criação do projeto.
() => "Hello World!": Uma expressão lambda que serve como manipulador de solicitação. Quando uma solicitação GET é feita no URL raiz, essa expressão lambda é executada e retorna a cadeia de caracteres "Olá, Mundo!"