2014-12-03 34 views
1

我試圖找到一種方法來實現以下使用Linq。如何使用Linq在查找列表中獲得匹配?

我有一個包含有3條信息類查詢列表:

int Period 
int MinValue 
int MaxValue 

我也有一個包含產品數據庫 - 每一個產品包含相同的3個變量作爲查找列表。

我想返回期間與查找列表中的條目匹配的產品,並且MinValue> =和MaxValue < =查找列表中的條目。

var q = products.Where(x => ... 

任何幫助?

回答

2

試試這個:

var q = products.Where(x => LookupList.Any(
              s => s.Period == x.Period && 
              x.MinValue >= s.MinValue && 
              x.MaxValue <= s.MaxValue)); 
2

據我瞭解的序列可以用下面的語句進行過濾。

var q = products.Where(
    x => Lookp.Any(y => x.Period == y.Period 
         && x.MinValue >= y.MinValue 
         && x.MaxValue <= y.MaxValue)); 

這裏,x是用於productsy成員變量是用於Lookup成員的變量。

相關問題