3
我知道動態構建Linq查詢的一些努力,例如this和this。使用實體框架的動態Linq查詢
沒有一個看起來很理想,因爲我希望避免將表達式放入字符串中,並且省略了不需要的地方。
我主要關心的是查詢針對數據庫進行了優化,並且儘可能動態地省略了不必要的子句。
這種情況下EF 4.0有什麼新的發展嗎?
UPDATE
這裏是一個鏈接,我發現非常有用: http://www.albahari.com/nutshell/predicatebuilder.aspx 的確,加入「及」過濾器動態是微不足道的,而加入「或」過濾器可以很容易地使用謂詞建設者來完成:
var predicate = PredicateBuilder.False<Product>();
predicate = predicate.Or (p => p.Description.Contains (temp));
,並根據LinqPad的SQL時發出相應地應用了哪些過濾器..