Linq для фильтрации идентификатора внутри списка С#

У меня есть список списка результатов, в котором он содержит List внутри него. У меня есть другой список, в котором он содержит только List. Я хочу, чтобы фильтр с использованием запроса linq из данных, где он должен возвращать все данные, которые содержат идентификатор навыка из второго списка.

var list = this._viewModel.Data.Select(T => T.SkillsList);
var filtered = item.Skills.Contains(list.Where(t=>t.ToString()).ToList();

из первого списка содержит список десятичных знаков внутри списка умений; item.Skills содержит список, в котором поля являются навыками и кодом. item - это еще один объект, содержащий список навыков.

Ответ 1

если skillId является переменной и предполагается, что SkillsList содержит свойство Id. Тогда следующее будет работать в получении вам любых данных с указанным skillId.

var list = this._viewModel.Data.Where(t=>t.SkillsList.Any(s=>s.Id == skillId));

Если Skillslist - это всего лишь массив целых чисел, тогда будет работать следующее.

var list = this._viewModel.Data.Where(t=>t.SkillsList.Any(s=> s == skillId));

Теперь, если вы проверяете список, будет работать следующее.

var list = this._viewModel.Data.Where(t=>t.SkillsList.Any(s=> skillsList.contains(s));