I have a object (product), with a property of type 'array'
e.g. product.tags = {"tag1","tag2","tag9"}
I have an array of input tags to filter on.
... but this is not quite working:
List<string> filterTags = new List<string>() { "tag1", "tag3" };
var matches = from p in products
where p.Tags.Contains(filterTags)
select p;
Any recommendations? Thanks.
What is the Contains
really meant to achieve? Do all items in Tags
need to exist in filterTags
? Or at least one of them? For the latter use Any
and for the former use All
. Your where
line would change to:
where p.Tags.Any(tag => filterTags.Contains(tag))
or
where p.Tags.All(tag => filterTags.Contains(tag))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With