如何获取属性树的跟踪
本文关键字:属性 跟踪 获取 何获取 | 更新日期: 2023-09-27 18:34:15
假设我有这样的东西:
class Program
{
static void Main(string[] args)
{
A A1 = new A();
A1.B1.C1.GetPath();
}
}
class A
{
public B B1 { get; set; }
public B B2 { get; set; }
}
class B
{
public C C1 { get; set; }
}
class C
{
public string GetPath();
}
是否有可能实现方法GetPath()
,例如返回"C1 in B1 in A1
"?
没有内置的方法可以解决这个问题。
您可以做的是:
-
OOP方式:定义ctor,在传递父/持有者类引用的地方,以便在运行时弄清楚。
-
使用Environment.StackTrace并获取堆栈跟踪(不知道这是否真正符合您的需求)
希望这有帮助。