2011-01-10 4 views
0

Я ищу логику переноса из хранимой процедуры в EF-модель. Хранимая процедура, возможно, приняла список отделов, которые будут искать. Эффективно я динамически строю критерии поиска (или пытаюсь ...).Динамическое создание выражения запроса или

У меня есть класс параметров, который содержит List< string> DeptCodes, который передается моему классу Searcher. Я применяю ограничения к набору данных IQueryable< SearchResult> dataList. Если DeptCodes содержит какие-либо элементы, я хочу применить цепочку ограниченных или ограниченных ограничений (в SQL where (DeptCode in 'ABC' or DeptCode in 'DEF')).

Я думаю, я хочу создать дерево выражений, но я не уверен, с чего начать (мои навыки LINQ на данный момент не совсем быстрые). Может ли кто-нибудь указать мне в правильном направлении или дать мне небольшой образец, чтобы начать меня?

Заранее спасибо

ответ

1

Я думаю PredicateBuilder может быть хорошим решением.

Постарайтесь посмотреть it.

+0

Спасибо - это сделал работа. Если кто-то еще ищет такое же решение, вам также потребуется загрузить LinqKit, поскольку EF не поддерживает Invoke-узлы, и это обеспечивает обходное решение. – Dave

Смежные вопросы