标题几乎解释了这一点。我正在编写一个源生成器,想知道如何查找给定节点的文件路径ClassDeclarationSyntax。这是我希望如何使用它的示例。
IEnumerable<SyntaxNode> allNodes = compilation.SyntaxTrees.SelectMany(s => s.GetRoot().DescendantNodes());
IEnumerable<ClassDeclarationSyntax> allClasses = allNodes.Where(d => d.IsKind(SyntaxKind.ClassDeclaration))
.OfType<ClassDeclarationSyntax>();
IEnumerable<string> filePaths = allClasses.Select(x=> x.GetFilePath());
Run Code Online (Sandbox Code Playgroud)