In C#, how does one obtain a reference to the base class of a given class?
For example, suppose you have a certain class, MyClass
, and you want to obtain a
This will get the base type (if it exists) and create an instance of it:
Type baseType = typeof(MyClass).BaseType;
object o = null;
if(baseType != null) {
o = Activator.CreateInstance(baseType);
}
Alternatively, if you don't know the type at compile time use the following:
object myObject;
Type baseType = myObject.GetType().BaseType;
object o = null;
if(baseType != null) {
o = Activator.CreateInstance(baseType);
}
See Type.BaseType and Activator.CreateInstance on MSDN.