假设我们的源代码中有一个类定义。
class Some
{
private IFoo Foo { get; }
public Some(IFoo foo)
{
Foo = foo;
}
}
如果您打开语法可视化工具,则只有SimpleAssignmenExpressionSyntax
。传递给构造函数的实际对象在其他地方初始化。 SymbolFinder.FindAllReferences
在这里可以提供帮助。您可以获取对IFoo
符号的所有引用,然后检查其父节点的子节点是否有ObjectCreationExpressionSyntax
。但只有在整个项目中创建此对象的单个实例时,这才有效。我们怎样才能找到传递给构造函数的实例?似乎我需要以某种方式模拟执行流程。