6

安装 Roslyn 后,它附带了几个很棒的演示工具。首先,对于那些想要更彻底地学习语法树的人来说,我认为最有价值的是语法可视化工具窗口,它显示了活动 *.cs 文件的语法树。

当我启动此扩展并在 Visual Studio 的测试实例中进行尝试时,一切正常。但是当我安装了这个扩展后,它就不再工作了。我仍然有 View -> Other Windows -> Roslyn Syntax Visualizer 但只是弹出一个空窗口工具。

有没有人有同样的问题并知道解决方案?

我想也许我需要复制这个扩展在重建时产生的 DLL 文件,但我不知道我应该把它放在哪里。

后来我发现了另一个有趣的细节——当我启动我自己的扩展时,语法可视化工具就可以工作了!因此,它仅适用于 Visual Studio 的测试实例。为什么会这样?

4

2 回答 2

13

语法可视化工具仅在您运行启用了 Roslyn 的 Visual Studio 时才有效。当您启动 Visual Studio 的测试实例时,会自动启用 Roslyn。可以通过将/rootsuffix Roslyn添加到快捷方式来使用 Roslyn 手动启动 Visual Studio,但请注意 Roslyn 尚未完成。默认情况下可能不建议启用它,具体取决于您正在处理的内容。当然,您也可以使用 Roslyn 创建另一个快捷方式,这样您就可以选择您想要的。

如果您在 Visual Studio 的代码选项卡中看到[Roslyn],则可以使用可视化工具。另一种验证 Roslyn 是否启用的方法是查看您的扩展程序。Roslyn 语言服务必须在那里才能工作。如果不是这种情况,则可以打开可视化工具,但它不会显示任何内容。

您可以在此处找到有关可视化器扩展的更多信息。

于 2012-02-27T11:54:42.577 回答
1

尼科很可能有答案。查看 Syntax Visualizer 项目的 Debug 属性,看看它是使用/rootsuffix Roslyn启动的。此外,如果不以这种方式启动,您应该能够在 C# REPL 和 C# 脚本编辑器窗口中看到语法可视化器;因为这些是 Roslyn CSharp 编辑器。

于 2012-03-20T19:06:19.743 回答