using System;
using System.Reflection;
namespace Recetas.Cap03
{
internal class ClaseExterior
{
public class ClaseAnidada { }
public struct EstructuraAnidada { }
}
public class UsoGetNestedTypes
{
public static void Main()
{
try
{
// Obtenemos el tipo asociado a la clase `ClaseExterior`:
Type tipo = typeof(ClaseExterior);
// Obtenemos la lista de los tipos anidados en `ClaseExterior`:
Type[] tiposAnidados = tipo.GetNestedTypes();
Console.WriteLine("\nCantidad de tipos anidados en `ClaseExterior`: {0}", tiposAnidados.Length);
foreach (Type t in tiposAnidados)
{
Console.WriteLine("\nTipo anidado: {0}\n", t.ToString());
}
}
catch(Exception e)
{
Console.WriteLine("Error: {0}", e.Message);
}
}
}
}