2009-12-02 19 views
7

En un método de instancia, que se puede encontrar fácilmente el espacio de nombres de ejecución:Obtener espacio de nombres en una función estática

public void PrintNamespace() 
{ 
    Console.WriteLine(this.GetType().Namespace); 
} 

Q: ¿Cómo puedo hacer lo mismo en una función estática(sin este disponible) sin mencionar explícitamente el nombre de clase? (Sin typeof(MyClass))

Respuesta

13
Console.WriteLine(typeof(TheClassThatContainsTheStaticFunction).Namespace); 

O utilizando la reflexión:

Console.WriteLine(MethodBase.GetCurrentMethod().DeclaringType.Namespace); 
+0

Ah sí, yo debería haber sido más explícito acerca de no querer la primera solución. El 2º es lo que estaba buscando. ¡Gracias! –

Cuestiones relacionadas