Skip to content

P1stak/ADO.NET_MySQL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Проект работы консольного приложения с базой данных MySQL с помощью фреймворка ADO.NET

Профессиональная система управления образовательной платформой:

  • Консольным клиентом (ADO.NET + MySQL)
  • REST API (Swagger/OpenAPI)
  • Полноценным набором unit-тестов

🔍 Ключевые особенности

🖥 Консольное приложение

  • Полноценная CRUD-система для управления пользователями, курсами, сертификатами
  • Интуитивное многоуровневое меню с цветовым оформлением
  • Поддержка транзакций при критических операциях
  • Использование хранимых процедур MySQL

🌐 Web API (Swagger)

  • Полный набор RESTful endpoints
  • Документирование через Swagger UI
  • Поддержка всех операций CRUD
  • Валидация входных данных

🧪 Тестирование

  • Покрытие unit-тестами ключевых сервисов
  • Проверка корректности SQL-запросов
  • Интеграционные тесты с реальной БД

🛠 Технологический стек

  • Backend:

    • .NET 8.0
    • ADO.NET (чистый доступ к данным)
    • MySQL 8.0+
  • Тестирование:

    • xUnit
    • coverlet (анализ покрытия кода)
  • Документирование:

    • Swagger/OpenAPI
    • XML-документация

📊 Функциональность

Основные модули

Модуль Консоль API Тесты
Пользователи
Курсы
Сертификаты
Комментарии
Рейтинги

🚀 Запуск проекта

Требования

  • .NET 8.0 SDK
  • MySQL Server 8.0+
  • Git

Запуск приложения у Вас локально:

  1. Склонируйте проект
git clone https://github.com/P1stak/ADO.NET_MySQL.git
  1. Установите БД MySQL
  2. Выполните скрипт создания БД в ...ADO.NET_MySQL/my_db.sql
  3. Запустите у себя проект (F5)

🏗 Архитектура проекта

image

💡 Ключевые особенности проекта?

  • Полноценная многослойная архитектура
  • Четкое разделение на presentation, business logic и data access слои
  • Возможность использования как консольного, так и веб-интерфейса
  • Профессиональная работа с БД
  • Оптимальное использование ADO.NET
  • Транзакции для критических операций
  • Хранимые процедуры для сложной логики
  • 85%+ покрытие тестами
  • Документирование всех публичных методов
  • Логирование ошибок
  • Конфигурация через appsettings.json
  • Поддержка Dependency Injection
  • Полная документация API

📸 Скриншоты системы

🖥 Консольный интерфейс

Главное меню Меню пользователя Список курсов
Главное меню Меню пользователя Список курсов

Таблица 1: Основные экраны консольного интерфейса


📝 Управление данными

Добавление сущности Удаление пользователя Редактирование записи
Добавление Удаление Редактирование

Таблица 2: Операции CRUD в системе


📊 Дополнительные модули

Комментарии к курсу Сертификаты пользователя Рейтинг пользователей
Комментарии Сертификаты Рейтинг

Таблица 3: Вспомогательные функции платформы


🌐 Веб-интерфейс API

Документация Swagger Работа с API (пример GET-запроса)
Swagger UI API Request

Таблица 4: Документация API в Swagger UI и пример выполнения запроса


🧪 Тестирование системы

Тесты сервисов
Тесты

Таблица 5: Результаты тестирования

About

Проект реализует создание базы данных в MySQL и работы с ней через фреймворк ADO.NET

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages