Выражение. Вызов в Entity Framework?

.net entity-framework linq linq-to-entities

Вопрос

Entity Framework не поддерживает оператор Expression.Invoke . Вы получаете следующее исключение при попытке использовать его:

Msgstr "Тип узла выражения LINQ 'Invoke' не поддерживается в LINQ to Entities.

У кого-нибудь есть обходной путь для этой недостающей функциональности? Я хотел бы использовать PredicateBuilder, подробно описанный здесь, в контексте Entity Framework.

Edit 1 @marxidad - мне нравится ваше предложение, однако оно несколько сбивает меня с толку. Можете ли вы дать дополнительные советы по предложенному решению?

Edit 2 @marxidad - Спасибо за разъяснения.

Принятый ответ

PredicateBuilder и LINQKit теперь поддерживают Entity Framework.

Извините, ребята, что не сделали этого раньше!


Популярные ответы

Платформа Entity преобразует выражения LINQ в деревья команд Entity, в которых поддерживаются только ее канонические функции. Вам придется использовать деревья команд с каноническими функциями, чтобы сделать что-то вроде PredicateBuilder.



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему