Tôi có một bộ sưu tập các đối tượng được gọi là Gigs
.Truy vấn Bộ sưu tập Trẻ em trong LINQ
Mỗi Gig
có bộ sưu tập Acts
.
Sử dụng LINQ Tôi muốn truy vấn bộ sưu tập các hợp đồng biểu diễn của mình để có được tất cả các hợp đồng biểu diễn có hành vi có id là 7 chẳng hạn.
act.id = 7;
Vì vậy, tôi bắt đầu ghi chép lại ...
return from gig in qry
where gig.Acts //not sure how to do this bit
select gig;
Nhưng tôi không chắc chắn làm thế nào bạn thiết lập điều kiện về bộ sưu tập con được gọi là hành vi.
Bất kỳ ý tưởng nào?
LINQ thực sự là, kỳ lạ kể từ khi có một vài cách để viết cùng một truy vấn. –
Vì vậy, yêu cầu đầy đủ là .... var x = gigs.Where (g => g.Acts.Select (a => a.Artist.ID) .Contains (7)); Nếu Nghệ sĩ là không hợp lệ (hoàn toàn hợp lệ), tôi nhận được ngoại lệ ... 'Được chia sẻ.DO.Artist Artist' of 'Shared.DO.Act' không hợp pháp về loại 'System.Collections.Generic.List' 1 [Shared.DO.Act] Suy nghĩ của Hmmm? – iasksillyquestions
Chỉ cần sửa đổi nó quá nhìn vào các nghệ sĩ đầu tiên, trước khi kiểm tra ID: var x = gigs.Where (g => g.Acts.Select (a => a.Artist) .Select (b => b.ID) .Contains (7)); hoặc –