我目前的项目是使用IDesign架构,所以我的所有层都是服务.我希望在我的资源访问层的CRUD中使用我的Read方法以lambda表达式的形式获取谓词以及要拉取的相关对象列表.这样,资源访问层将非常通用.
[OperationContract]
Result<MyObject> ReadObjects(Func<MyObject, bool> predicate, string[] includes);
Run Code Online (Sandbox Code Playgroud)
现在我已经发现了一些应该是显而易见的事情,那就是我无法序列化lambda表达式.我研究了将字符串解析为lambda表达式,但这也是不行的.
有什么方法可以用来将lambda表达式传递给服务吗?有没有更好的方法来做我想做的事情?