Search code examples
c#.netreflectionassembliessuperclass

.NET / C# - Reflection Help - Classes in an Assembly


What is the best way to loop through an assembly, and for each class in the assembly list out it's "SuperClass"?


Solution

  • Assembly assembly = typeof(DataSet).Assembly; // etc
    foreach (Type type in assembly.GetTypes())
    {
        if (type.BaseType == null)
        {
            Console.WriteLine(type.Name);
        }
        else
        {
            Console.WriteLine(type.Name + " : " + type.BaseType.Name);
        }
    }
    

    Note that generics and nested types have funky names, any you might want to use FullName to include the namespace.