http://expressiontree.codeplex.com/

екущий проект использует архитектуру IDesign, поэтому все мои слои являются сервисами. Я хотел, чтобы мой метод Read в CRUD моего уровня доступа к ресурсам принимал предикат в форме лямбда-выражения, а также список связанных объектов для извлечения. Таким образом, уровень доступа к ресурсам будет очень общим.

[OperationContract]
Result<MyObject> ReadObjects(Func<MyObject, bool> predicate, string[] includes);

Теперь я пришел, чтобы обнаружить нечто, что должно было быть очевидным, и это то, что я не могу сериализовать лямбда-выражения. Я изучил синтаксический анализ строки в лямбда-выражении, но это тоже не пойдет.

Есть ли какой-нибудь метод, который я могу использовать для передачи лямбда-выражения в службу? Есть ли лучший способ сделать то, что я пытаюсь сделать?