如何获取当前自定义位置和文件(在项目或解决方案中)下任何符号的文件名和定义位置?
我执行以下步骤(简化解释):
通过以下方式创建语法树集合和编译:
SyntaxTrees = new List<SyntaxTree>(); foreach (var file in projectFiles) syntaxTrees.Add(SyntaxTree.ParseText(File.ReadAllText(file)); Compilation = Compilation.Create("temp.cs", null, SyntaxTrees, new MetadataReference[] { mscorlib });
获取语法树中的当前标记:
var token = currentTree.GetRoot().FindToken(textPos, false);
符号有适当的方法来定义得到:DeclaringSyntaxNodes
. token
我该如何Symbol
解决SemanticModel
?谢谢。