i’m trying to make a mixed collection of Types. I know the types at the start.. but I can’t seem to figure out the syntax to make the collection, etc.
eg.
....
// I leave the typo there, for embarrassment :(
Initialize(new []{ typeof(Cat), typeof(Dog), typeof(JohnSkeet) });
...
public Foo Initialize(IEnumerable<Type> types)
{
// for each type, set up the inmemory storage.
foreach(var type in types)
{
// ????
// Create an empty list, which will only contain this 'type'
// I'm guessing, an IDictionary<type, ICollection<type>>().. thingy ?
}
}
public ICollection<Type> SomeTypeData(Type type)
{
// Return the collection, for this type.
}
Does this mane sense? Is this possible?
It looks to me like you’re trying to create some kind of instance repository; a class that stores a list of instances of a given type.
Here’s an example implementation. I’ve included both a generic and non-generic version of the SomeTypeData method:
Below is a usage example:
Generic:
Non-Generic: