2011-08-10 79 views
0

我正在使用實體框架3.5。我的模型有一個調解者表和一個調解者可用性表。大多數調解員在MediatorAvailabilities中沒有條目(可用性=空),但無論是否存在相關的MediatorAvailabilities,我仍需要將調解員帶回。使用Linq to Entities 3.5選擇空列

我的查詢下面只是帶回介體,如果有相關的可用性。再次如何獲得中介即使可用性=空?:

Dim mediators = (From m In entity.Mediators.Include("MediatorAvailabilities") _ 
Where(m.MediatorAvailabilities.Any(Function(a) a.Availability = String.Empty Or a.Availability.Contains("Weekends") = True)) 
         Where (m.isActive = True) _ 
         Order By m.Sequence _ 
         Select New RankingCriteria() With { _ 
          .FirstName = m.FirstName, _ 
          .LastName = m.LastName, _ 
          .CompanyName = m.CompanyName, _ 
          .PhoneHome = m.PhoneHome, _ 
          .PhoneWork = m.PhoneWork, _ 
          .PhoneMobile = m.PhoneMobile, _ 
          .Email = m.Email _ 
         }).ToList() 

什麼是正確的方法來做到這一點?

回答

0

我認爲你需要在你的Any方法調用添加a.Availability is Nothing像這樣:

Where(m.MediatorAvailabilities.Any(Function(a) a.Availability is Nothing Or a.Availability = String.Empty Or a.Availability.Contains("Weekends") = True)) 
+0

再次感謝Aducci,我不能讓「只不過」工作。我結束了使用m.MediatorAvailabilities.Count> = 0.我不知道這是否正確的方式,但它似乎工作。讓我知道你是否有其他想法。 – Asmussen