Comment puis-je passer une expression lambda à un service WCF?

Mon projet actuel est à l'aide de la IDesign de l'architecture, de sorte que tous mes calques sont des services. Je voulais avoir ma méthode de Lecture dans le CRUD de mon accès aux ressources de la couche de prendre un prédicat sous la forme d'une expression lambda ainsi qu'une liste d'objets liés à tirer. De cette façon, l'accès aux ressources de la couche qui va être très générique.

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

Maintenant, je viens de découvrir quelque chose qui devrait être évident, c'est que je ne peux pas sérialiser les expressions lambda. J'ai regardé dans l'analyse d'une chaîne de caractères dans une expression lambda, mais c'est un no go.

Est il une méthode que je peux utiliser pour passer d'une expression lambda à un service? Est-il une meilleure façon de faire ce que je suis en train de faire?

source d'informationauteur OpticalDelusion