在静态函数中获取命名空间

Ser*_*ier 8 .net static-methods namespaces

在实例方法中,我可以轻松找到正在执行的命名空间:

public void PrintNamespace()
{
  Console.WriteLine(this.GetType().Namespace);
}
Run Code Online (Sandbox Code Playgroud)

问:如果没有明确提及类名,我如何在静态函数中做同样的事情(没有这个)?(不typeof(MyClass))

Dar*_*rov 15

Console.WriteLine(typeof(TheClassThatContainsTheStaticFunction).Namespace);
Run Code Online (Sandbox Code Playgroud)

或使用反射:

Console.WriteLine(MethodBase.GetCurrentMethod().DeclaringType.Namespace);
Run Code Online (Sandbox Code Playgroud)