我最近编写了一个使用表达式树的动态查询工具,当我走的时候,表达树的力量开始在我身上拂晓。我的查询工具也可以构成报告工具,动态决策引擎的基础,也可能是您需要以抽象方式处理动态对象的其他情况。
这个过程很痛苦(通过反射递归调用泛型方法 - 呃)所以我想知道是否有人创建了一个可以利用表达式树的力量完成某些任务的通用库?我见过PredicateBuilder但有人知道其他人吗?
答案 0 :(得分:2)
Generic operators(在MiscUtil中)是基于表达式树的相当好的代码;很简单,但非常多才多艺。其他一些想法:
(很多其他人)
答案 1 :(得分:1)
你看过DLR了吗?我对它的了解并不多,但我的理解是,Linq-to-SQL幕后的表达式树机制已在DLR中有效发布。
答案 2 :(得分:1)
NJection是一个通过配置文件处理代码注入的库。
NJection.LambdaConverter是一个将代理转换为表达式树的库。
答案 3 :(得分:0)
你看过LINQ和IQueryable界面了吗?这就是他们实现LINQ to SQL等的方式。