EFUtility.CodeGenerationTools.MetadataTools.GetSubtypesOf C# (CSharp) Method

GetSubtypesOf() public method

Returns the subtype of the EntityType in the current itemCollection
public GetSubtypesOf ( EntityType type, ItemCollection itemCollection, bool includeAbstractTypes ) : IEnumerable
type System.Data.Metadata.Edm.EntityType
itemCollection ItemCollection
includeAbstractTypes bool
return IEnumerable
        public IEnumerable<EntityType> GetSubtypesOf(EntityType type, ItemCollection itemCollection, bool includeAbstractTypes)
        {
            if (type != null)
            {
                IEnumerable<EntityType> typesInCollection = itemCollection.GetItems<EntityType>();
                foreach (EntityType typeInCollection in typesInCollection)
                {
                    if (type.Equals(typeInCollection) == false && this.IsSubtypeOf(typeInCollection, type))
                    {
                        if (includeAbstractTypes || !typeInCollection.Abstract)
                        {
                            yield return typeInCollection;
                        }
                    }
                }
            }
        }