- Создать минималистичный веб-сервис, в который входит, Древовидная иерархическая модель данных без ограничения уровня вложенности (структура каталогов), и минимальные Rest API покрывающие CRUD операции над этой моделью.
- Создать простейшее приложение демонстрирующее подключение и работоспособность веб-сервиса.
Уделить внимание стилю кода и общей завершенности приложения.
Решение разделено на 3 проекта
- Web API
- Blazor WebAssembly
- Библиотека DTO
Web API:
- Предоставляет контроллеры для CRUD операций
- Валидирует данные при сздании, чтении
- Для маппинга используется AutoMapper
- Для работы с БД используется Entity Framework
- Для удобства проверки используется эмуляция БД в оперативной памяти и разрешен CORS
Blazor WASM:
- Отрисовывает дерево сущностей в html
- Выполняет CRUD операции
- Интегрирован в WebApi проект для удобства запуска
DTO:
- Вынесены в отдельную библиотеку для избежания дублирования кода на клиенте и сервере