我希望對於任何擅長Linq的人來說,這將是一個相當簡單的問題。我努力爲以下內容提出正確的Linq表達式。我能夠破解一些東西來獲得結果,但我確信有一個正確和簡單的Linq方式來做到這一點,我只是不夠Linq尚未...已過濾收集的集合的Linq表達式?
我有一個數據庫訪問通過實體框架。它有許多任務。每個任務都有一個TimeSegments集合。 TimeSegments具有日期和員工屬性。
我想要的是能夠獲取某個員工和某個月的任務以及同一月份和員工的每個任務的時間段。
同樣,這些任務本身並不具有月份和日期信息,但它們通過與每個任務相關的時間段來完成。
非常簡單,它看起來有點像這樣:
public class Model //Simplified representation of the Entity Framework model
{
public List<Task> Tasks { get; set; }
}
public class Task
{
public int Id { get; set; }
public List<TimeSegment> TimeSegments { get; set; }
public Customer Customer { get; set; }
}
public class TimeSegment
{
public int Id { get; set; }
public string Date { get; set; }
public Employee Employee { get; set; }
}
public class Employee
{
public int Id { get; set; }
public string Name { get; set; }
}
那麼,如何做到這一點儘可能簡單地使用LINQ?即任務以及某個月和員工的相關時間段。我也希望能夠通過客戶BTW得到它...
+1 - 打敗我吧。 – RPM1984 2010-12-21 22:34:57
好的,但這隻會選擇包含這些時間段的任務,然後選擇這些任務,對不對?這意味着結果中的選定任務將包含所有時間段,即使那些不符合Any表達式測試的時間段也是如此......我只需要包含那些時間段的任務,並且只包含測試的時間段。 – Anders 2010-12-21 23:40:11