Мне нужна помощь с синтаксисом или методологией LINQ, не знаю, какой именно.
Вот моя проблема: у меня есть список предметов (Билл, Боб, Эд), и мне нужно выбрать и отфильтровать все, что выбрал пользователь. Таким образом, если viewModel содержит «Bob», то оператор LINQ должен вернуть «Bill», «Ed.» Хитрость заключается в том, что пользователь может выбирать несколько вещей, поэтому viewModel может содержать «Ed», «Bob», и поэтому оператор LINQ должен возвращать только «Bill».
ViewModel - это IEnumerable, а список элементов - это List <>. В качестве отправной точки у меня есть что-то простое:
c.Items.select(p=>p.Name)
где c.Items относится к Биллу, Бобу и Эду выше. Теперь мне просто нужно отфильтровать выборки viewModel, и я борюсь с синтаксисом LINQ. Я пробовал варианты на! = ViewModel.selectedNames, которые ни к чему не привели, некоторые варианты с использованием .contains и один с использованием всех.
var filteredItems = viewModel.selectedNames;
c.Items.Where(p => filteredItems.All(t => !p.Name.Contains(t)));
Я сейчас чувствую себя обиженным.