15
void MagicalFunction(MagicalType magic)
{
    ...
    magic.Poof("something");
    ...
    var foo = magic.GetFoo();
    ...
}

按变量上的热键magic将导航到 type 的定义MagicalType

按下热键foo将转到类型定义,Foo由于类型推断,此处不直接可见。

Resharper 插件具有此功能(称为Go To Type of Symbol),但是否有内置替代方案或免费扩展可以做到这一点?

4

4 回答 4

12

右键单击“var”关键字,从上下文菜单中选择“转到定义”,它将带您进入推断的变量类型的类型定义。我安装了一些工具,比如上面提到的 Productivity Power Tools,所以不确定这个选项是否可以通过干净的 VS2015 获得。

编辑:

如果您更喜欢使用键盘,您也可以将光标放在“var”关键字上按 Ctrl-F12(转到实现)。参考:https ://www.youtube.com/watch?v=xWcQhF-1hxA

于 2017-02-23T07:38:57.103 回答
5

有点。

您可以在“魔术”上按 F12 以获取其定义,然后再次按 F12 以获取其类别。

此外,虽然您无法通过 F12 在“foo”上获得任何有意义的信息,因为它只会突出显示您已经在的行,但如果您在 foo 之前立即从“var”中 F12,它会将您跳转到 Foo 类,即使正在推断该类型。

于 2016-10-11T23:28:00.190 回答
5

您正在寻找的功能是“导航至”。

出于某种奇怪的原因,键盘快捷键已从 VS 2015 中删除。您可以通过进入“编辑”菜单看到这一点。该选项将在那里,但没有分配给它的快捷方式。

您可以手动修复此问题。默认值为:

CTRL + ,

转到工具 > 选项 > 环境 > 键盘,搜索“Edit.NavigateTo”并重新分配快捷方式。然后,您可以将光标放在变量上并点击快捷方式,右上角将覆盖一个小窗口,其中包含可能的候选者,其中一个是类型定义。

于 2016-10-17T16:11:37.320 回答
-1

Productivity Power Tools 具有“Ctrl + 单击转到定义”功能,此扩展通过在您按住 Ctrl 键时向代码中的符号添加可点击的超链接,为编辑器提供了一个 Web 浏览器。

https://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef

它在第一种情况下不起作用,但是当你在第二种情况下按 ctrl 单击“var”时效果很好

于 2016-10-15T19:34:57.430 回答