Im getting a table Tags from the db.
the table has columns ID and TagName
I’m doing something like this to get a list of strings:
var taglist = Model.Tags.Select(x => x.TagName.ToLower()).ToArray();
then I’m comparing against another string array to get the strings that occur in both:
var intersectList = tagList.Intersect(anotherList);
I have my list, but now I also want the ID of each item remaining in the intersect list that corresponds to the tagList. (can just be an int array)
Can anyone help with a good way to do this?
Don’t use intersect, it only works for collections of the same type. You could do a simple join or other form of filtering. It would be easiest to throw the string list into a
HashSetand filter by tags that containTagNames in that set. This way, you keep your tags unprojected so they keep their ids and other properties.And put them into a list. Don’t throw them into an array unless you specifically need an array (for use in a method that expects an array).