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

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

Сообщение Anonymous »


это мой первый вопрос о переполнении стека. Прямо сейчас я пытаюсь создать свою собственную версию шаблона репозитория на C# с инфраструктурой сущностей и наткнулся на проблему при попытке обернуть IQueryable в действие, подобное этому Action. мое намерение состоит в том, чтобы разрешить реализацию конкретной логики запроса в классе репозитория каждой модели.

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

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

пространство имен Api.Domain.Repository.Base { общедоступный абстрактный класс Repository: IRepository, где T: BaseTable { частный контекст DataContext только для чтения; частный объект DbSet, доступный только для чтения; общедоступный репозиторий (контекст DataContext) { this.context = контекст; сущность = context.Set(); } защищенный IList Select (фильтр Action) { if (filter == null) выдать новое 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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