How to: Combin Data with Linq by using joins'daki Örneklere bakın. İlk tutulan kişi nesnelerini (İlk ve Soyadı) iki listeye sahibiz. İkinci Liste, bir kişi nesnesini (evcil hayvan sahibi) tutan Pet nesnelerini (İsim) tutar. Bir Kişi> = 0 evcil hayvana sahip olabilir. Şimdi happend neLinq fazlalık üretir mi?
Ben
Dim result1 = From pers in people
Group Join pet in pets
on pers Equals pet.Owner
Into PetList = Group
linqpad bana sonucunu gösterir grup
katılmak gerçekleştirilen bağlıdır: (Linq işten çok üretiyor gibiBu bana bakıyor ben ama Burada yanlış olabilir!). İlk sonuç nesnesi kişi nesnesini üç kez tutacaktır. Burada iki soru bir Linq nooby olarak karşımıza çıkıyor (ama belki de çıktıyı doğru şekilde okumuyorum):
- Kişinin konusu referans mı? Ne yazık ki bu konuda bir şey bulamadım. sorguda yukarıda belirtilen örnekte ardından
- biz PetList içinde Kişi Nesne hakkında tüm bilgileri varsa, neden sadece bu nesneyi sorgulamak
Select pers.FirstName , pers.LastName, PetName = If(pet is Nothing, String.Empty, pet.Name)
ile devam ediyor? Benim düşünceme göre, artık Pers'e ihtiyacımız yok.
Burada önemli gerçekler linq ertelenmiş yürütme kullanır ve bu bu fazlalıkların oluşturulmadığı bir biçim olarak derlenmesi gerekir (olabildiğince) – Sayse