Я вот сам пишу подобное, отличная практика и понимание. Недавно вот написал аналог SqlAdapter. который сам генерит запросы при получении данных из грида или списка, не важно, плюс добавил поддержку чанков данных, чтобы не было ошибки "слишком длинный запрос".
Научился: Всегда полезно повторить работу с EF!
Особенно полезно повторить исправление ошибки: EF вместо локального SQL сервера пытается привязаться к localDb и не может создать файл базы данных в папке Users из-за отстутсвия прав. Настройка прав ничего не даёт, да и к тому же, EF пропускает слеш в пути к файлу и вместо C:\Users\*файл базы данных*.mdf пытается создать C:\Users*файл базы данных*.mdf. Проблема в сети встречается, но самое простое решение просто вручную в web.config поменять путь с localDb на локальный SQL сервер.
Научился: Добавили, через nuget EntityFramework. Создали класс для формирования базы данных, создали класс контекста, где передали с каким классом работать. Добавили Магистра в базу данных. Трудности: Все новое и непривычное. VS studio 2019 у меня, поэтому есть небольшие различия.