Разработка REST API на .NET 9: Полное руководство для начинающих 0:00
Данный курс от Алана Омари (Alan Omary), подготовленный для канала freeCodeCamp.org, представляет собой пошаговое руководство по созданию REST API с использованием стека ASP.NET Core и новейшей версии .NET 9. В ходе обучения рассматриваются основы архитектуры REST, реализация базовых CRUD-операций (создание, чтение, обновление и удаление данных), а также настройка персистентного хранения данных с помощью SQL Server и Entity Framework Core.
💻 Основы REST API и структура проекта 0:52
REST (Representational State Transfer) — это набор правил взаимодействия систем через интернет с использованием стандартных HTTP-методов: GET, POST, PUT и DELETE. В контексте разработки API на .NET 9 ключевую роль играет структура проекта:
- Program.cs: точка входа, где настраивается контейнер сервисов и конвейер обработки HTTP-запросов.
- appsettings.json: главный файл конфигурации, где хранятся параметры логирования и строки подключения к базе данных.
- launchSettings.json: содержит URL-адреса приложения для среды разработки.
- .http файлы: современный способ тестирования конечных точек (endpoints) прямо из среды Visual Studio, заменяющий собой Swagger UI в новых версиях.
🛠 Реализация API без базы данных 7:28
На начальном этапе для демонстрации работы API автор предлагает использовать статический список объектов (моделей) в контроллере. Модель (в данном примере — класс Book) представляет собой C#-класс, описывающий структуру данных.
Основные методы контроллера:
- GET: возвращает данные. Используется метод
ActionResultдля передачи статуса 200 OK. - GET (по ID): поиск конкретного ресурса в списке с возвратом 404 Not Found, если ресурс отсутствует.
- POST: добавление данных. При успешном создании возвращается статус 201 Created.
- PUT: обновление существующих записей.
- DELETE: удаление данных из списка.
Для обеспечения консистентности данных между запросами автор использует ключевое слово static при объявлении списка.
💾 Работа с базой данных: SQL Server и Entity Framework Core 32:42
Поскольку использование статических списков приводит к потере данных при перезапуске приложения, следующим шагом становится подключение к SQL Server.
Настройка инфраструктуры:
- Инструменты: Установка SQL Server и SQL Server Management Studio (SSMS) для управления базой данных.
- Entity Framework Core: Использование этого фреймворка позволяет взаимодействовать с базой данных через C#-код.
- Контекст (Context Class): Создание класса, наследующего
DbContext, который выступает мостом между C# и БД. - Миграции: Использование команд
add-migration(для создания схемы) иupdate-database(для применения изменений) является стандартной практикой для управления структурой БД.
Асинхронность и производительность:
Для предотвращения блокировки потоков приложения при работе с базой данных все методы контроллера переводятся на асинхронную модель:
- Добавление ключевого слова
asyncк сигнатуре метода. - Обертывание возвращаемого типа в
Task. - Использование ключевого слова
awaitпри вызове операций с базой данных (например,ToListAsync,SaveChangesAsync).