una sirve que puede programacion para nombres métodos miembros metodos instanciar espacio error ejemplos directamente contener como clases clase campos c# reflection namespaces

c# - sirve - Sacar todas las clases de un espacio de nombres específico



un espacio de nombres no puede contener directamente miembros como campos o métodos (1)

¿Hay alguna forma de obtener un objeto de un espacio de nombre específico? Tal vez con el System.Reflections ? Quiero obtener todos los objetos del tipo ITestType en el espacio de nombres Test.TestTypes como Objects para que tenga una lista de instancias de TestType1, TestType2, TestType3 etc. ¿Alguien me puede ayudar? No sé dónde buscar eso.


Puede encontrar todos los tipos dentro de un ensamblaje y encontrar todos los tipos que coincidan con el espacio de nombres dado (esto es realmente fácil con LINQ), pero si no tiene un ensamblaje específico para examinar, debe examinar todos los posibles.

Sin embargo, si estás buscando una forma de encontrar todos los objetos en vivo, esa es una cuestión diferente, y no puedes hacerlo sin usar la API de perfil, que yo sepa. (Incluso entonces puede ser difícil, no lo sé).

Aquí está la consulta LINQ:

public static IEnumerable<Type> GetTypesFromNamespace(Assembly assembly, String desiredNamespace) { return assembly.GetTypes() .Where(type => type.Namespace == desiredNamespace); }