Итак, вот сценарий: у меня есть ряд разных классов репозитория, каждый из которых может использовать изолированный контекст данных или общий контекст. В случаях, когда используется изолированный контекст, я хочу добавить метод к базовому классу, который позволит мне указать lambda в качестве параметра, выполнить это выражение изолированным контекстом выбранного репозитория и вернуть результат IQueryable, Как будет выглядеть подпись метода и как передать выражение в контекст?
Мне нужно, чтобы решение было как можно более общим, поскольку можно использовать любой возможный модельный объект/таблицу.
Вот в основном то, что я ищу:
IAssetRepository repo = new AssetRepository(true); // true indicates isolated context
var results = repo.ExecuteInContext<SomeType>(SomeTable.Where(x =>
x.SomeProp.Equals(SomeValue)));