繁体   English   中英

当按F12进入Visual Studio 2015 / C#中的定义时出现错误

[英]I got error when press F12 Go to definition in Visual Studio 2015 / C#

当我在Visual Studio 2015中按F12(转到定义)时,我收到此错误消息:

发生一个或多个错误

我已经尝试过:

  1. 关闭解决方案
  2. 删除.suo文件
  3. 重新构建解决方案

..但这并没有解决。

请帮忙。

尝试访问外部程序集的元数据时,这是C#和制表符而不是空格的问题。 可能与插入点的推断位置有关。

在此处输入图片说明

其他人已经证明了这一点

这里这里有几张Connect门票以及与此相关Github问题 还有一个讨论在这里

Visual Studio 2015更新1

此问题已在更新1中解决,因此请安装!

RTM的解决方法不佳

选项对话框会记住最后一页,并在后续打开时保留在那里。 我有一个键盘快捷键可以快速打开选项窗格(Alt + o)。 我暂时更改为空格,转到定义,然后在更改任何代码之前恢复为制表符。 这个工作流程不是很漂亮,但是VS2015中的3.0 Nuget问题也没有(Nuget 3迄今为止已得到改进)。

VS 2015 Update 1应该可以解决此问题。

我做了一个扩展,它仅在每次调用“ GoToDefinition”命令时启用/禁用“保持选项卡”,并且似乎可以正常工作: GoToDefinition Fix

我找到; 如果在选项 -> 文本编辑器 -> 所有语言 -> 选项 下设置Keep Tab ,并且在C#下相同,则F12Alt + F12可以正常工作。

现在,Visual Studio错误已修复,这种黑客攻击不再有用。 我将其保留在此处,以防它对于破解即将出现的类似问题很有用。


AutoHotKey来解救! 与不良键盘UX的弊端进行不懈的斗争。

以下是设置脚本的方法,该脚本将Ctrl + F12绑定到一个键序列,该键序列设置了空间缩进,进入了定义然后恢复了制表符缩进。 使用它代替F12可以转到代码库之外的定义:

  1. 安装AutoHotKey
  2. 在名为FixF12.ahk类的地方创建一个新文件。 将以下脚本粘贴到其中。
  3. 打开您的启动文件夹。 您可以通过在Windows资源管理器位置栏中键入shell:startup到达那里。
  4. 右键单击将FixF12.ahk拖动到“ Startup然后创建一个快捷方式。
  5. 运行快捷方式。

FixF12.ahk脚本:

#NoEnv
SendMode Input

^F12::
WinGetActiveTitle Title
IfInString Title, Microsoft Visual Studio
{
  Send, ^QC{#} tabs{Enter}
  Sleep, 300
  Send, !p
  Sleep, 300
  Send, {Enter}
  Send, {F12}
  Send, !tO
  Sleep, 300
  Send, !k
  Sleep, 300
  Send, {Enter}
}
else
{
  Send, {^F12}
}

该脚本是一个hack,具有闪烁的对话框和竞争条件,但可以完成任务。 不要忘记在Connect中提高bug报告的质量 希望Microsoft将在Update 1之前发布修复程序。

Visual Studio 2015 Update 1解决了此问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM