Тестовое задание: GameLibrary от АПРИКОД
Controllers | ||
Data | ||
Models | ||
Repositories | ||
appsettings.Development.json | ||
appsettings.json | ||
GameLibrary.csproj | ||
GameLibrary.db | ||
GameLibrary.sln | ||
Program.cs | ||
readme.md |
Тестовое задание для "АПРИКОД"
Реализовать HTTP REST API для обеспечения работы библиотеки видеоигр. В приложении должны быть реализованы CRUD операции с играми:
- создание,
- получение списка игр с возможностью фильтрации по жанру,
- изменение,
- удаление.
Запись об игре содержит данные:
- название,
- студия разработчик,
- 1 или более жанров, которым соответствует игра.
При выполнении задания требуется использовать:
- ASP.NET Core для реализации HTTP REST API приложения,
- Entity Framework Core для работы работы с любой реляционной базой данных.
Примечание:
- Entity Framework Core рассматривается как заменяемая зависимость, поэтому ожидается абстрагирование от него.
Ответ
Реализовал контроллер Games подерживающий CRUD
Create
POST /api/games
Content-Type: application/json
{
"Title": "God of War",
"Developer": "Santa Monica Studio",
"Genres": ["Action", "Adventure", "RPG"]
}
Read all
GET /api/games
Read one
GET /api/games/5
Update
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
DELETE /api/games/2