csharp_rest
Разработка REST API на C#, Asp.Net (SOLID):
Описание проекта
Это REST API для управления интернет-магазином комиксов. API предоставляет функциональность для создания, редактирования, удаления и получения данных о комиксах, а также документацию с помощью Swagger.
Технологии и зависимости
- ASP.NET Core 8.0: основная технология для построения API
- MySQL: реляционная база данных для хранения данных о комиксах
- Entity Framework Core: ORM для работы с базой данных
- Pomelo.EntityFrameworkCore.MySql: провайдер для подключения к MySQL
- Swagger/OpenAPI: для генерации документации API и взаимодействия с ним
Установка и настройка
1. Установка зависимостей
Убедитесь, что у вас установлены следующие компоненты:
- .NET SDK 8.0
- MySQL (для базы данных)
- Visual Studio 2022 (или любой другой редактор, поддерживающий ASP.NET Core)
2. Клонирование репозитория
3. Настройка базы данных
Подключение к MySQL
Откройте файл и измените строку подключения к базе данных на ваши реальные данные:
Миграции базы данных
Для создания и обновления базы данных выполните следующие команды в терминале:
Эти команды создадут необходимые таблицы в базе данных.
4. Запуск приложения
После успешного обновления базы данных запустите приложение:
API будет доступно по адресу .
5. Swagger UI
Swagger UI позволяет удобно просматривать и тестировать API. Swagger-документация доступна по следующему URL (локально):
Эндпоинты API
| Метод | Маршрут | Описание |
|---|---|---|
| | Получить список всех комиксов |
| | Получить информацию о комиксе по ID |
| | Добавить новый комикс |
| | Полностью обновить информацию о комиксе |
| | Частично обновить информацию о комиксе |
| | Удалить комикс по ID |
Логика и структура проекта
Основные файлы и директории:
— точка входа в приложение.Program.cs— содержит модели базы данных.Models/— содержит сервисы, которые инкапсулируют бизнес-логику API.Services/— содержит контроллеры, которые обрабатывают запросы к API.Controllers/— содержит конфигурации приложения, включая строку подключения к базе данных.appsettings.json
Документация API
Документация по API автоматически генерируется Swagger и доступна по указанному выше URL.
Конфигурация Swagger
Swagger был добавлен в проект через файл :
Лицензия
Этот проект лицензируется по лицензии MIT.