У меня есть метод в объекте, который вызывается из нескольких мест внутри объекта. Есть ли быстрый и простой способ узнать имя метода, который вызвал этот популярный метод.
ПРИМЕР псевдокода:
public Main()
{
PopularMethod();
}
public ButtonClick(object sender, EventArgs e)
{
PopularMethod();
}
public Button2Click(object sender, EventArgs e)
{
PopularMethod();
}
public void PopularMethod()
{
//Get calling method name
}
Внутри PopularMethod()
я хотел бы увидеть значение Main
, если он был вызван из Main
... Я хотел бы увидеть ButtonClick
, если PopularMethod()
был вызван из ButtonClick
Я смотрел на System.Reflection.MethodBase.GetCurrentMethod()
, но это не помогло мне найти метод вызова. Я посмотрел на класс StackTrace
, но мне действительно не нравилось запускать всю трассировку стека каждый раз, когда вызывается этот метод.