0
我在我的MVC應用程序中有許多關係表,電影和代碼第一種方法中的標記。我希望用戶能夠選擇與標籤關聯的所有電影。例如,我想選擇標籤id = 2的所有電影。我需要lambda查詢,這將允許我這樣做。任何幫助讚賞。如何從多對多關係中選擇關聯表
我在我的MVC應用程序中有許多關係表,電影和代碼第一種方法中的標記。我希望用戶能夠選擇與標籤關聯的所有電影。例如,我想選擇標籤id = 2的所有電影。我需要lambda查詢,這將允許我這樣做。任何幫助讚賞。如何從多對多關係中選擇關聯表
這是一個辦法:如果沒有與ID = 2沒有標籤
var moviesWithTag2 = context.Movies
.Where(m => m.Tags.Any(t => t.Id == 2))
.ToList();
這將返回一個空的集合。
替代(這將返回null
如果沒有與標識沒有標籤= 2):
var moviesWithTag2 = context.Tags
.Where(t => t.Id == 2)
.Select(t => t.Movies)
.SingleOrDefault();
如果您還想要Tag
實體,你可以只加載它,包括它的電影:
var tag2 = context.Tags.Include(t => t.Movies)
.Single(t => t.Id == 2);
tag2.Movies
將包含標記爲Id = 2的電影。
你已經使我的一天。謝謝你sooooo多。 – JED 2012-03-05 21:44:32
再次感謝空集合對我來說很好。 – JED 2012-03-05 21:52:56