I'm working in a new project and I'm trying to use the Clean Architecture approach with Repository pattern. I'm using .net core 3, C#, Automapper, MediatR and Dapper.
I have these layers:
Domain (in the center, the core of all): here I have the business Entities, Aggregations and Value Objects with their validations rules and exceptions;
Application (it's around the Domain): here I'm using CQRS patterns and I have my Commands, Queries and Interfaces;
Persistence: here I have the implementations of the repositories interfaces.
I red that a repository should be responsible of the all CRUD operations relative to one table in the database. For this I want to know how I should implement the repositories for an ENTITY that is an AGGREGATION ENTITY. Should I create an AGGREGATION REPOSITORY that extract data from different tables? Or should I have a repository for each table and a SERVICE that creates AGGREGATION using more than one repository?