JobApplication - ASP.NET API WEB Service
Важно! Для тестирования при каждом запуске создается БД заново с определенными параметрами, для того, чтобы процесс не был занят другими приложениями их нужно закрыть, либо отключить параметр database.EnsureCreated()/ EnsureDeteled();
-
Для тестирования используется localhost.
-
При деплое брать строку подключения из конфигурационного файла/.ccv file, на данный момент строка указывается в качестве параметра EF optionsBuilder.
-
Реализацию запросов можно проверить через внутреннюю утилиту Swagger, с помощью кнопки Try it out.
Сервис реализует такие HTTP запросы как:
api/Products/...
-HTTP GET - получить список всех имеющихся товаров
-HTTP GET/{id} - получить доступ к товару по ID
-HTTP POST {params} - создать продукт
-HTTP DELETE{id} - удалить товар из БД
api/Orders/...
-HTTP POST {params} - создать заказ создает заказ и закрепляет за товаром элемент списка заказов, отнимает купленный товар из общего количества
-HTTP DELETE {id} - удалить заказ, и прибавляет значение купленных товаров обратно в товар
Проект использует Entity Framework и все связи и сущности создаются автоматически и заполняются для примера в классе Program.cs исключетельно для теста
В силу того, что задание тестовое было добавлено несколько продакшн условностей, которые, на данный момент, не выполняют всех своих функций
- Id пользователя, который создал заказ (логика и валидация поля отсутствует, все зависит от системы учета пользователей, которую задание не предусматривает)
- Связь многие ко многим заказы и продукты. Предполагается, что существует выборка по заказам пользователя по Id и в последствии формируется корзина на основе полученных товаров.
- Любые правки допустимы