is it possible?
i want to get the name of class (like foo) which is invoking my method (like myMethod)
(and the method is in another class(like i))
like:
class foo
{
i mc=new i;
mc.mymethod();
}
class i
{
myMethod()
{........
Console.WriteLine(InvokerClassName);// it should writes foo
}
}
thanks in advance
You can use StackTrace
to work out the caller - but that's assuming there's no inlining going on. Stack traces aren't always 100% accurate. Something like:
StackTrace trace = new StackTrace();
StackFrame frame = trace.GetFrame(1); // 0 will be the inner-most method
MethodBase method = frame.GetMethod();
Console.WriteLine(method.DeclaringType);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With