Esta API permite criar, atualizar, excluir e obter hotéis e quartos. Você também pode criar reservas para quartos.
- Controller: Os controllers são responsáveis por lidar com as solicitações HTTP e retornar as respostas.
- Data: O diretório Data contém o contexto de dados e os modelos de dados.
- Models: Os modelos de dados representam os dados que são armazenados no banco de dados.
- appsettings.json: O arquivo appsettings.json contém as configurações da API, como a string de conexão do banco de dados.
- program: O arquivo program é o ponto de entrada da API.
O contexto de dados é uma classe que fornece acesso ao banco de dados. Ele é herdado da classe DbContext do Entity Framework Core.
Os modelos de dados são classes que representam os dados que são armazenados no banco de dados. Eles são anotados com atributos do Entity Framework Core para indicar como os dados são mapeados para as tabelas do banco de dados.
O arquivo appsettings.json contém as configurações da API, como a string de conexão do banco de dados.
O arquivo program é o ponto de entrada da API. Ele inicia o servidor da API e registra os controllers.
- Mapster: Um pacote que permite mapear objetos .NET para modelos JSON.
- Microsoft.AspNetCore.OpenApi: Um pacote que permite gerar e consumir APIs abertas.
- Microsoft.EntityFrameworkCore: Um pacote que fornece um ORM para o .NET Core.
- Microsoft.EntityFrameworkCore.Design: Um pacote que fornece suporte para o design de modelos de dados no Visual Studio.
- Microsoft.EntityFrameworkCore.SqlServer: Um pacote que fornece um adaptador para o SQL Server.
- Microsoft.EntityFrameworkCore.Tools: Um pacote que fornece ferramentas para o desenvolvimento de aplicativos EF Core.
- Swashbuckle.AspNetCore: Um pacote que fornece suporte para a documentação de APIs.
Para obter mais informações sobre esses pacotes, consulte os links abaixo:
- Mapster
- Microsoft.AspNetCore.OpenApi
- Microsoft.EntityFrameworkCore
- Microsoft.EntityFrameworkCore.Design
- Microsoft.EntityFrameworkCore.SqlServer
- Microsoft.EntityFrameworkCore.Tools
- Swashbuckle.AspNetCore
Ponto de extremidade | Descrição |
---|---|
GET /hotels |
Obter todos os hotéis. |
GET /hotels/{id} |
Obter um hotel pelo ID. |
POST /hotels |
Criar um novo hotel. |
PUT /hotels/{id} |
Atualizar um hotel pelo ID. |
DELETE /hotels/{id} |
Excluir um hotel pelo ID. |
GET /hotels/{id}/rooms |
Obter todos os quartos para um hotel pelo ID. |
POST /hotels/{id}/rooms |
Criar um novo quarto para um hotel pelo ID. |
PUT /hotels/{id}/rooms/{roomId} |
Atualizar um quarto para um hotel pelo ID. |
DELETE /hotels/{id}/rooms/{roomId} |
Excluir um quarto para um hotel pelo ID. |
POST /hotels/{id}/rooms/{roomId}/reservations |
Criar uma nova reserva para um quarto em um hotel pelo ID. |
Ponto de extremidade | Corpo da solicitação | Corpo da resposta |
---|---|---|
GET /hotels |
Nenhum | Uma lista de hotéis. |
GET /hotels/{id} |
Nenhum | Um hotel pelo ID. |
POST /hotels |
Um objeto de hotel. | O ID do novo hotel criado. |
PUT /hotels/{id} |
Um objeto de hotel. | O objeto de hotel atualizado. |
DELETE /hotels/{id} |
Nenhum | Nenhum. |