How can I list all the classes in my current project(assembly?) using reflection? thanks.
Given an instance a
of System.Reflection.Assembly, you can get all types in the assembly using:
var allTypes = a.GetTypes();
This will give you all types, public, internal and private.
If you want only the public types, you can use:
var publicTypes = a.GetExportedTypes();
If you are running this code from within the Assembly itself, you can get the assembly using
var a = Assembly.GetExecutingAssembly();
GetTypes and GetExportedTypes will give you all types (structs, classes, enums, interfaces etc.) so if you want only classes you will have to filter
var classes = a.GetExportedTypes().Where(t => t.IsClass);
Have a look at the Assembly.GetTypes method.
Yes, you use the Assembly.GetTypes method.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With