2012-05-09 84 views
0

我一直在搞Predicate Builder兩天了,雖然每個網站都說因爲某種原因它很容易實現(很可能是我的錯),但我無法讓它工作。我決定使用Predicate構建器,因爲我知道我想要搜索哪些列,並且它們都在同一個表中。我所要做的就是在多列中搜索可能存在於任何3列中的關鍵字。我已經讀過Predicate Builder可以很容易地完成這個任務,但是這個教程並沒有對我進行明顯的說明。以下是我迄今爲止,如果任何人都可以指出我在正確的方向,我將不勝感激。目前它在我搜索時沒有做任何事情,它只是返回所有的記錄。謝謝你的幫助!MVC 3中的謂詞生成器

if (!String.IsNullOrEmpty(searchString)) 
      { 


       var predicate = PredicateBuilder.True<iamp_mapping>(); 



       predicate = predicate.Or(p => p.PA.Contains(searchString)); 
       predicate = predicate.Or(p => p.MAJOR_PROGRAM.Contains(searchString)); 
       predicate = predicate.Or(p => p.INVESTMENT_AREA.Contains(searchString)); 

      } 
+0

如果您需要更多代碼,請讓我知道。 – Goldentp

回答

2

使用 '或' 加入嘗試

var predicate = PredicateBuilder.False<iamp_mapping>(); 

由於你。

+0

我試圖添加False,但沒有奏效,它在搜索後不斷返回所有記錄 – Goldentp