早在 2013 LINQ 動態查詢 就困擾著我
http://weisnote.blogspot.tw/2013/03/dynamic-linq.html
當時找到 Dynamic LINQ
但是組字串並不是個好法子
(要組字串的話 我何不直接用 Pure T-SQL)
曾經與 LINQ 纏鬥過的朋友都知道 動態查詢 很難搞
尤其是 Or
並沒有什麼內建的法子 可以讓你動態來 Or Or Or
要不就寫死 .Where(x => x.Foo == 'Foo' || x.Bar == 'Bar || x.Goo == 'Goo' || x.Nar == 'Nar'')
要不就 Expression Trees 硬幹 像這樣
靠自己 好自在...才怪
賣鬧啊 Expression Trees 學習曲線 可沒比 Regular Expression 低 (雖然小弟兩樣都沒學好)
如今 2014 了 技術是會進步的!!
(其實應該出來滿久的 只是我沒去玩他)
拜讀於此:
援助教技--IT點滴日誌:http://neo-tech-tw.blogspot.tw/2013/08/linq-predicatebuilder.html
繼續沉睡5000年:http://leaflet-t-h.blogspot.tw/2011/11/linq-predicatebuilder.html
Kelp Code:http://kelp.phate.org/2011/12/linq-to-object-linqkitpredicatebuilder.html
鄭重歡迎 ~ LINQKit http://www.albahari.com/nutshell/linqkit.aspx
LINQKit 裡面應該是有不少妖魔鬼怪的 但是今天只來玩 PredicateBuilder 來搞定 Or Or Or
照官網範例 很簡單就 完成了
靠大神 好爽...正解
其中比較讓人困惑的 可能就是這句
它的完整型別長這樣
更不懂了?? 其實他就下面這東東
至於什麼時候用 PredicateBuilder.True<T> 什麼時候用 PredicateBuilder.False<T> 則是看接起來是什麼結果
簡單來說 如果都是 Or 用 PredicateBuilder.False<T> 如果都是 And 用 PredicateBuilder.True<T>
眼尖的考究帝一定有發現瀏覽器下面有一條鬼東西
那是最近神人傳授的好物 Glimpse
不僅美觀 功能更甚 MiniProfiler
Glimpse 官網http://getglimpse.com/Docs/
怎麼裝就不用講了 Nuget~催落去
真要說有什麼缺點的話 大概就是 螢幕太小很麻煩 因為 他內容很多 非常寬 : P
沒有留言:
張貼留言