Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpAqJn 166 of 509 menu
◀ ▶

Оператор join в LINQ

Метод Join сопоставляет элементы левой и правой последовательности с одинаковым ключом и склеивает их в результат. Если ключ не совпал, пара в вывод не попадает.

У пользователя "Ann" и заказа "book" общий ключ UserId. В консоли ожидается строка "Ann:book":

var users = new[] { new { Id = 1, Name = "Ann" } }; var orders = new[] { new { UserId = 1, Item = "book" } }; var q = users.Join(orders, u => u.Id, o => o.UserId, (u, o) => $"{u.Name}:{o.Item}"); Console.WriteLine(q.First());

Заказ с UserId=2 без пользователя в левой таблице исчезнет из результата - счётчик станет 0:

var users = new[] { new { Id = 1, Name = "Ann" } }; var orders = new[] { new { UserId = 2, Item = "orphan" } }; Console.WriteLine(users.Join(orders, u => u.Id, o => o.UserId, (u, o) => u.Name).Count());

Соедините каталог товаров и цены по общему коду и выведите одну строку результата.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить