2010-11-02 29 views
1

我想寫一個LINQ查詢一些對象,我只需要做一個選擇,如果設置了一個過濾器的值。與LINQ和表達式丟失

有沒有辦法動態地改變查詢來只做一個選擇,如果這是設置。

+5

您的問題缺少足夠的細節,能夠智能地回答它。 – 2010-11-02 16:39:53

+0

這是很好的LINQ到對象,或LINQ to SQL或LINQ to Entities的花式表兄弟之一?這在寫答案時會有很大的不同。 – 2010-11-02 16:41:17

+1

你能否提供更多的上下文?也許有些代碼? – 2010-11-02 16:41:21

回答

1
var query = Somthing().Where(x => x.IsSomethingYouAlwaysFilterBy); 
if(FilterValueIsSet(filterValue)) 
{ 
    query = query.Where(x => x.Property == filterValue) 
} 
4

使用where找到感興趣的項目,例如:

collection.Where(i => PassesFilter(i)).Select(i => i.InterestingValue);