Я пытаюсь использовать этот sample:левое внешнее соединение с Linq без DefaultIfEmpty
То, что я хочу, это только возвращение:'the Книга с Id = 2.
new Book{BookID=2, BookNm=".NET and COM for Newbies"},
Я хочу только тех, книга (ы), которая не имеет ордеров.
Когда я удаляю DefaultIfEmpty(), он тоже не работает.
UPDATE
Person magnus = new Person { FirstName = "Magnus", LastName = "Hedlund" };
Person terry = new Person { FirstName = "Terry", LastName = "Adams" };
Person charlotte = new Person { FirstName = "Charlotte", LastName = "Weiss" };
Person arlene = new Person { FirstName = "Arlene", LastName = "Huff" };
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 bluemoon = new Pet { Name = "Blue Moon", Owner = terry };
Pet daisy = new Pet { Name = "Daisy", Owner = magnus };
// Create two lists.
List<Person> people = new List<Person> { magnus, terry, charlotte, arlene };
List<Pet> pets = new List<Pet> { barley, boots, whiskers, bluemoon, daisy };
var query = from person in people
join pet in pets on person equals pet.Owner into gj
where !gj.Any()
select person;
Я просто попробовал этот код, и кажется, это работает!
Я возвращаюсь к человеку Арлин, у нее нет домашних животных!
Может ли somene подтвердить, что это известный подход? Я только что придумал это LOL
где ваш код? –
Его тот же код из ссылки, которую я вставлял ... По-моему, эта ссылка не предлагает никакого реального объединения. Я просто хочу вернуть книги без заказов. – Elisabeth
см. Мое обновление! ... – Elisabeth