под названием People2, а также со свойствами firstName и LastName.
Мне нужно хранить только людей1, где firstName и LastName значения людей2 совпадают со значениями людей1.
Этот псевдокод не работает, но он может лучше объяснить то, чего я надеюсь достичь, чем это многословное объяснение :
people3 = people1.Select(x => x.firstName IN (people2.firstName)
&& x.lastName IN (people2.lastName))
Я новичок в этом, поэтому единственный способ, который я придумал, - это перебирать элементы списка люди2, сравнивая людей1 и, если они совпадают, сохранить их в люди3. Это сработает, но я предполагаю, что есть более приятный способ сделать это, и я пытаюсь узнать что-то новое, поэтому решил выложить это, чтобы посмотреть, что придумают ваши великие умы.
ОБНОВЛЕНИЕ:
Поигравшись немного, я близок к этому, но не могу понять, как добавить совпадающие элементы в новый объект IEnumerable.
Вот код, который у меня есть, он не работает в строке «Добавить»:
IEnumerable people3 = null;
foreach(var person in people1)
{
if (people2.Exists(x => x.FirstName == people1.FirstName))
{
people3.Add(person);
}
}
Подробнее здесь: https://stackoverflow.com/questions/272 ... in-c-sharp
Мобильная версия