Этот репозиторий демонстрирует реализацию простой платформы для блога с использованием ядра ASP.NET с акцентом на CQRS (разделение ответственности команд) и шаблоны MediaTR. Приложение включает в себя основные операции CRUD для постов и категорий, придерживаясь подхода к чистой архитектуре.
Паттерн CQRS используется для разделения операций чтения и записи, улучшая масштабируемость и обслуживаемость приложения. Запросы используются для обработки операций чтения, в то время как команды обрабатывают операции записи.
Mediatr используется для отделения слоев приложения путем реализации шаблона посредника. Это гарантирует, что запросы и уведомления обрабатываются через центральный посредник, способствуя свободной связи и приверженности принципу единой ответственности.
Организация Entity Framework используется в качестве ORM (объектно-реляционная Mapper) для операций базы данных. Контекст настроен на использование SQL Server с опциями для включения связанных объектов при необходимости.
Automapper интегрирован для обработки картирования объекта, упрощения преобразования между моделями доменов и моделями просмотра.
Содержит основные объекты и интерфейсы, в том числе:
Post , CategoryIAsyncRepository , IPostRepositoryСодержит бизнес -логику, в том числе:
CreatePostCommand - определяет данные и логику, необходимые для создания нового поста.GetPostsListQuery - определяет данные и логику, необходимые для получения списка сообщений.Содержит реализацию шаблона репозитория с использованием основного ядра Entity, включая:
PostDb .IAsyncRepository и IPostRepository .Точка входа приложения, содержащая контроллеры и основную настройку программы. Он настраивает сервисы, промежуточное программное обеспечение и маршрутизацию.
FluentValidation используется для обеспечения целостности данных и логики валидации для команд.