Joh*_*las 6 c# wcf lambda delegates
我不知道这是否可能......但它会很酷.问题是它是否可能,但如果可能的话,那就是一个例子.
我不确定您将使用什么方法签名来传递lambda表达式.
例如方法 IList<Group> GetGroups()
你如何修改它以便能够将lambda表达式传递给它?
接下来的问题是如何编写lambda表达式以返回所有Group对象,例如
where .deleted == false 要么where .DateAdded > aDate是的,我想把月亮放在棍子上;)先谢谢你.
(编辑我认为这实际上有点不合理,因为实际上会获取数据的数据访问层...但是假设您正在通过服务查询某些对象集合而不必担心dal ).
您可以GetGroups使用类型的参数声明方法,该参数Expression<Func<Group, bool>>表示组必须匹配才能返回的谓词:
IList<Group> GetGroups(Expression<Func<Group, bool>> predicateExpression);
Run Code Online (Sandbox Code Playgroud)
问题是,表达式无法序列化,因此您无法将其发送到WCF服务...但是,您可能会找到一种方法来使用表达式树序列化项目.