我想留在加盟實體框架工作3.5,但我不能這樣做......左連接實體框架3.5
from i in
(from ta in context.test_attempt
join uf in context.user_flag on ta.users.USERID equals uf.UserID)
select i;
我想使用左連接,而不是加入?
我想留在加盟實體框架工作3.5,但我不能這樣做......左連接實體框架3.5
from i in
(from ta in context.test_attempt
join uf in context.user_flag on ta.users.USERID equals uf.UserID)
select i;
我想使用左連接,而不是加入?
您需要使用DefaultIfEmpty()
的外連接:
from ta in context.test_attempt
join uf in context.user_flag on ta.users.USERID equals uf.UserID into g
from uf in g.DefaultIfEmpty()
select new { ta, uf }
你從外/選擇上面是不必要的,只是項目ta
和uf
到你所需要的。
實體框架3.5不支持DefaultIfEmpty()。我曾嘗試過,但它給錯誤.......... –
然後,我認爲你運氣不好。 :( – dahlbyk
除了DefaultIfEmpty()之外,還有其他的方法,因爲實體框架3.5不支持這個嗎? –
您可以在這裏找到不同LINQ連接的示例:http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9以及其他LINQ示例的負載。
實體框架1.1不支持DefaultIfEmpty()我試過這個,但是它給出錯誤......... 。 - –
.NET 3.5中的實體框架不提供Linq查詢中的左連接。 獲取方式「聯接的記錄」是通過導航屬性 實體
實體框架3.5不存在。你的意思是EF 1,4,4.1還是4.2(可能是1)? –
我假設他的意思是EF1 for .NET 3.5。說實話,你真的不應該使用EF1。非常有缺陷。升級到EF和.NET 4或使用另一個ORM IMO。 –
是的,我的意思是EF1 for .Net 3.5 –