我最近寫了一個使用表達式樹的動態查詢工具,當我去表達式樹的力量開始在我身上拂曉。我的查詢工具還可以構成報告工具的基礎,動態決策引擎以及您需要以抽象方式處理動態對象的其他情況。.NET中的表達式樹 - 圖書館?
該過程很痛苦(通過反射遞歸調用泛型方法 - 唉),所以我想知道是否有人創建了一個通用庫,可以利用表達式樹的力量來完成這些類型的任務?我看過PredicateBuilder,但有人知道其他人嗎?
我最近寫了一個使用表達式樹的動態查詢工具,當我去表達式樹的力量開始在我身上拂曉。我的查詢工具還可以構成報告工具的基礎,動態決策引擎以及您需要以抽象方式處理動態對象的其他情況。.NET中的表達式樹 - 圖書館?
該過程很痛苦(通過反射遞歸調用泛型方法 - 唉),所以我想知道是否有人創建了一個通用庫,可以利用表達式樹的力量來完成這些類型的任務?我看過PredicateBuilder,但有人知道其他人嗎?
Generic operators(在MiscUtil中)是一種基於表達式樹的相當好用的代碼;非常簡單,但非常靈活。一些其他的想法:
(很多其他的)
你看過LINQ和IQueryable接口嗎?這就是他們如何實現LINQ to SQL等。
你是否看了DLR?我對這個細節並不瞭解太多,但我的理解是,在Linq-to-SQL中幕後的表達式樹機制已經在DLR中有效地發佈。
NJection是一個通過配置文件處理代碼注入的庫。
NJection.LambdaConverter是一個將代表轉換爲表達式樹的庫。
不,這是不正確的。它看起來很相似,但是DLR遠遠不如以前。 – leppie 2008-12-04 10:05:08