安装Roslyn时,它附带了几个很棒的演示工具。首先,我认为对于那些想要更彻底地学习语法树的人来说,最有价值的是语法可视化工具窗口,它显示了活动* .cs文件的语法树。
当我启动此扩展并在Visual Studio的测试实例中尝试它时,一切正常。但是,当我安装此扩展程序时,它不再起作用了。我还有View - >其他Windows - >弹出Roslyn语法Visualizer但只弹出一个空窗口工具。
有没有人遇到同样的问题并知道解决方案?
我想也许我需要复制此扩展程序在重建时生成的DLL文件,但我不知道我应该把它放在哪里。
后来我发现了另一个有趣的细节 - 当我启动自己的扩展时,Syntax Visualizer Tool可以工作!因此,它仅适用于Visual Studio的测试实例。为什么会这样?
答案 0 :(得分:13)
语法Visualizer仅在运行启用了Roslyn的Visual Studio时才有效。当您启动Visual Studio的测试实例时,会自动启用Roslyn。可以通过将 / rootsuffix Roslyn 添加到快捷方式来手动启动Visual Studio和Roslyn,但要注意Roslyn尚未完成。默认情况下启用它可能不明智,具体取决于您正在处理的内容。当然,你也可以用Roslyn创建另一个快捷方式,这样你就可以选择你想要的那个。
如果在Visual Studio的代码选项卡中看到 [Roslyn] ,则可以使用可视化工具。另一种验证Roslyn是否已启用的方法是查看您的扩展程序。 Roslyn语言服务必须在那里才能发挥作用。如果不是这种情况,则可以打开可视化工具,但不会显示任何内容。
您可以找到有关可视化工具扩展程序here的更多信息。
答案 1 :(得分:1)
Nico很可能有答案。查看语法Visualizer项目的Debug属性,看看是否正在使用 / rootsuffix Roslyn 启动。此外,如果不以这种方式启动,您应该能够在C#REPL和C#Script编辑器窗口中看到Syntax Visualizer;因为这些是Roslyn CSharp的编辑。