Desidero essere in grado di trovare tutti i tipi principali (classi di base e interfacce) per un tipo specifico.Trova tutti i tipi principali (entrambe le classi di base e le interfacce)
EG se ho
class A : B, C { }
class B : D { }
interface C : E { }
class D { }
interface E { }
voglio vedere che A è B C D ed E e oggetto
cosa è il modo migliore per fare questo? c'è un metodo di riflessione per fare questo o ho bisogno di farmi qualcosa.
==== ==== EDIT
Quindi qualcosa di simile?
public static IEnumerable<Type> ParentTypes(this Type type)
{
foreach (Type i in type.GetInterfaces())
{
yield return i;
foreach (Type t in i.ParentTypes())
{
yield return t;
}
}
if (type.BaseType != null)
{
yield return type.BaseType;
foreach (Type b in type.BaseType.ParentTypes())
{
yield return b;
}
}
}
Stavo sperando di non doverlo fare da solo, ma vabbè.