2016-01-21 60 views
0

我有,其他人可能會相當簡單的一點邏輯,但我一直在繞圈,無法弄清楚。無法獲取Linq語法

我正在使用實體框架,但這不是太重要,因爲它是我需要建議的Linq部分。

我有一個命名的類別和另一個命名的優惠。關係是一個報價可以有一個類別,當然一個類別可以有很多報價。

每個提議具有2布爾列:IsActiveIsExpired

我想只選擇具有至少1個有效報價的類別(即IsActive!IsExpired

雖然我使用的存儲庫,它本質上是相同的,其中r是類別表。

 return r.Find() 
      .Any(x => x.Offers.Where(y => y.IsActive == true)); 

這是一個很大的語法錯誤。幫幫我!

回答

7

我認爲你已經混淆了whereany。嘗試:

return r.Find().Where(x => x.Offers.Any(y => y.IsActive)); 
1

嘗試嵌套在裏面的任何地方。

return r.Find() 
     .Where(x => x.Offers.Any(y => y.IsActive));