I have an object, that has many properties but the only two to worry about are:
myobject.ID which is an int
myobject.Names which is a HashSet
Then I have a List of those objects that looks something similar to this:
List<myobject>
I use Linq to get a some of the data into a repeater, but I’m not sure how to get the list of Names and how often they show up.
Want to use Linq to avoid having to loop through the data.
As my tags should show, this is an ASP.NET solution using C#.
Some clarification:
Lets say I have just three items in my list:
Item 1 has John, Fred, Jack in its names.
Item 2 has John, Fred, Joe in its names.
Item 3 has John in its names.
I am trying to return the following:
John – 3
Fred – 2
Jack – 1
Joe – 1
Also, as a note I am familiar with having to write my own comparer for my object, I’m just missing the ‘how to’ for the overall solution in my thoughts.
Here is how I understand the problem that you are trying to solve. You have a list of
myobjects. Eachmyobjecthas a property calledNameswhich is aHashSetofstrings (i.e.,HashSet<string>). You want to count the number of times eachstringthat appears in somemyobject.Namesappears in all themyobject.Names. That is, you haveas three
myobject.Namesand you want to seeIf so:
I do not see what role
myobject.IDplays here. Please qualify.