Each sub type had a specific icon and other properties that were the same for each sub type. Where can these be specified? I wouldn't think they are a part of each sub-type since it's a property of the "Type". Any thoughts?
Place common properties in the SuperType and different properties in subTypes.
- How can I get a list of the sub types for a supertype?
I guess you may use the EntityType Enumuration to get instances of each entity type by reflection, then You can check if this type "Is" of the superType type.
This does bring up another issue. If I flatten this table out, can 2 subtypes use the same field in their definition?
e.g., ILT has minStudents, On the job training has minStudents, but eLearning does not. They all inherit from Course.
If you use one table, then there is nothing wrong of using the same field in more than one type. And if you use TargetPerEntity model, there is also nothing wrong to have the same field name defined in more than one subType.