확장 구문 사용 나는 두 개의 목록에서 LINQ를 사용하여 왼쪽 조인을 만들려고합니다. 다음은 Microsoft의 도움을 받았지만 애완 동물 목록에 요소가 없음을 보여주기 위해 수정했습니다. 내가 끝내고있는 것은 0 요소의 목록입니다. 나는 내부 조인이 일어나기 때문이라고 생각합니다. 내가 끝내고 싶은 것은 누락 된 요소에 null 데이터가 채워진 3 개의 요소 (3 Person 개체) 목록입니다. 즉 왼쪽 - 결합. 이것이 가능한가?LINQ 내부 조인 대 왼쪽 조인
Person magnus = new Person { Name = "Hedlund, Magnus" };
Person terry = new Person { Name = "Adams, Terry" };
Person charlotte = new Person { Name = "Weiss, Charlotte" };
//Pet barley = new Pet { Name = "Barley", Owner = terry };
//Pet boots = new Pet { Name = "Boots", Owner = terry };
//Pet whiskers = new Pet { Name = "Whiskers", Owner = charlotte };
//Pet daisy = new Pet { Name = "Daisy", Owner = magnus };
List<Person> people = new List<Person> { magnus, terry, charlotte };
//List<Pet> pets = new List<Pet> { barley, boots, whiskers, daisy };
List<Pet> pets = new List<Pet>();
// Create a list of Person-Pet pairs where
// each element is an anonymous type that contains a
// Pet's name and the name of the Person that owns the Pet.
var query =
people.Join(pets,
person => person,
pet => pet.Owner,
(person, pet) =>
new { OwnerName = person.Name, Pet = pet.Name }).ToList();
여행 애호가 : 정확히 나는 무엇을 찾고 있었습니까! – Ekaterina
질의 메소드에 대괄호를 달아서 .ToList()를 얻을 수 있는지 알지 못했습니다. 고마워요! – Haroon
LINQ 선언적 쿼리 구문 "LINQ 구문"을 호출하지 마십시오. 둘 다 "LINQ 구문"입니다. 적절한 이름 지정은 : 조회 구문; vs : 메소드 구문;입니다. http://msdn.microsoft.com/en-us/library/bb397947.aspx – Pluc