У меня есть объект (продукт) со свойством типа 'массив'
например, product.tags = {"tag1", "tag2", "tag9"}
У меня есть массив входных тегов для фильтрации на.
... но это является не совсем рабочим:
List<string> filterTags = new List<string>() { "tag1", "tag3" };
var matches = from p in products
where p.Tags.Contains(filterTags)
select p;
Какие-либо рекомендации?Спасибо.
Чего на самом деле предназначен Contains
? Все ли элементы в Теги
должны существовать в filterTags
? Или хотя бы один из них? Для последнего используйте Any
, а для первого используйте All
. Ваша строка где
изменится на:
where p.Tags.Any(tag => filterTags.Contains(tag))
или
where p.Tags.All(tag => filterTags.Contains(tag))