Обертывание Entity Framework IQueryable внутри действия и применение фильтраC#

Место общения программистов C#
Anonymous
Обертывание Entity Framework IQueryable внутри действия и применение фильтра

Сообщение Anonymous »


Это мой первый вопрос здесь, в Stack Overflow.

Я пытаюсь создать свою собственную версию шаблона репозитория на C# с помощью Entity Framework и столкнулся с проблемой при попытке обернуть IQueryable в такой метод действия код>Действие. Мое намерение состоит в том, чтобы разрешить реализацию конкретной логики запроса в классе репозитория каждой модели.

Вот что я имею в виду:

Базовый репозиторий:

пространство имен Api.Domain.Repository.Base { общедоступный абстрактный класс Repository: IRepository, где T: BaseTable { частный контекст DataContext только для чтения; частный объект DbSet, доступный только для чтения; общедоступный репозиторий (контекст DataContext) { this.context = контекст; сущность = context.Set(); } защищенный IList Select (фильтр Action) { если (фильтр == ноль) бросить новое ArgumentNullException(nameof(filter)); var query =entity.AsQueryable(); фильтр (запрос); возврат запроса.ToList(); } } } Конкретный репозиторий:

пространство имен Api.Domain.Repository { общедоступный интерфейс IAddressRepository: IRepository { IList GetMinMax(int ​​min, int max); } общедоступный класс AddressRepository: Repository, IAddressRepository { public AddressRepository (контекст DataContext): база (контекст) { } public IList GetMinMax(int ​​min, int max) { return Select(q => q .Where(a => a.Id >= min && a.Id

Вернуться в «C#»