2011-01-07 112 views
1

這可能看起來像一個奇怪的要求,但是對於需要我認爲這將是一個很好的概念,以便能夠然後可以被編譯成一個提供類型安全的lambda表達式轉換過濾器屬性字符串的API一個查詢字符串 - 本質上類似於Linq - > SQL。轉換lambda表達式字符串

因此,例如:

Func<TQueryObj, bool> 
(invoice) => { invoice.Status == "DRAFT" && invoice.Type == "ACCREF" }; 

將向

Status=="DRAFT" && Type=="ACCREF" 

我使用的發票API此刻因此例如轉換。任何方式來實現這個相當簡單?

乾杯

回答

4

你需要做一個繼承ExpressionVisitor,這將通過Expression<Func<...>>遞歸爬行。
這不會是容易的。

+3

+1「這並不容易。」 – tster 2011-01-07 13:33:37

相關問題