在System.Reflection
中是否有一个技巧来获取调用另一个方法的方法的命名空间?我现在拥有的是:
var stackTrace = new System.Diagnostics.StackTrace();
MethodBase method = stackTrace.GetFrame(1).GetMethod();
string namespace = method.DeclaringType.Namespace;
Assembly assembly = method.DeclaringType.Assembly;
答案 0 :(得分:0)
不,如果调用方法是内联的,即使你的技巧也不会在生产中工作 - 也就是说,编译器使它与下一个方法一致。
没有可靠的方法来获取这种信息。