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
|
||
```
|
||
|