63 lines
1.7 KiB
Markdown
63 lines
1.7 KiB
Markdown
|
# Тестовое задание для "АПРИКОД"
|
|||
|
|
|||
|
Реализовать HTTP REST API для обеспечения работы библиотеки видеоигр.
|
|||
|
В приложении должны быть реализованы CRUD операции с играми:
|
|||
|
- создание,
|
|||
|
- получение списка игр с возможностью фильтрации по жанру,
|
|||
|
- изменение,
|
|||
|
- удаление.
|
|||
|
|
|||
|
Запись об игре содержит данные:
|
|||
|
- название,
|
|||
|
- студия разработчик,
|
|||
|
- 1 или более жанров, которым соответствует игра.
|
|||
|
|
|||
|
При выполнении задания требуется использовать:
|
|||
|
- ASP.NET Core для реализации HTTP REST API приложения,
|
|||
|
- Entity Framework Core для работы работы с любой реляционной базой данных.
|
|||
|
|
|||
|
Примечание:
|
|||
|
- Entity Framework Core рассматривается как заменяемая зависимость, поэтому ожидается абстрагирование от него.
|
|||
|
|
|||
|
|
|||
|
## Ответ
|
|||
|
Реализовал контроллер Games подерживающий CRUD
|
|||
|
|
|||
|
Create
|
|||
|
```http
|
|||
|
POST /api/games
|
|||
|
Content-Type: application/json
|
|||
|
|
|||
|
{
|
|||
|
"Title": "God of War",
|
|||
|
"Developer": "Santa Monica Studio",
|
|||
|
"Genres": ["Action", "Adventure", "RPG"]
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
Read all
|
|||
|
```http
|
|||
|
GET /api/games
|
|||
|
```
|
|||
|
Read one
|
|||
|
```http
|
|||
|
GET /api/games/5
|
|||
|
```
|
|||
|
Update
|
|||
|
```http
|
|||
|
PUT /api/games/1
|
|||
|
Content-Type: application/json
|
|||
|
|
|||
|
{
|
|||
|
"Id": 1,
|
|||
|
"Title": "The Legend of Zelda: Breath of the Wild (Updated)",
|
|||
|
"Developer": "Nintendo",
|
|||
|
"Genres": ["Action", "Adventure", "Open World"]
|
|||
|
}
|
|||
|
```
|
|||
|
Delete
|
|||
|
```http
|
|||
|
DELETE /api/games/2
|
|||
|
```
|
|||
|
|