假设有methodA(),methodB()和methodC()。
并且在运行时调用methodC()。
是否有可能知道methodC()是从什么方法调用的?
我在想是否可以在运行时读取CallStack进行某些检查?如果是,我认为应该没什么大不了的。
有任何想法吗?
谢谢!
最佳答案
使用StackTrace
和StackFrame
类。例如:
StackTrace stackTrace = new StackTrace();
StackFrame[] stackFrames = stackTrace.GetFrames();
foreach (StackFrame stackFrame in stackFrames)
{
string method = stackFrame.GetMethod().Name;
// do some stuff with method
}