Visual Studio的Go To Definition已禁用,F12无法正常工作。其他命令如Alt-F12可能会继续工作。
答案 0 :(得分:55)
答案 1 :(得分:7)
请注意,这也可能是禁用C ++ / C#数据库的结果。
在“工具 - 选项”中,在搜索框中键入“IntelliSense”,然后单击“C / C ++ - 高级”。在“浏览/导航”部分中,将“禁用数据库”更改为“False”(如果不是这样)。
重新启用后,关闭并重新打开以强制重建。 注意:例如,IntelliSense将在磁盘(* .sdf和ipch)上生成应从Git中排除的大文件。
答案 2 :(得分:3)
我知道解决方案已经解决了。但是,我遇到了完全相同的问题。我搜索了互联网。没有任何技巧可行,包括这个。
最终,我想通了。我右键单击了有问题的文件。我把文件包含在项目中。不是那么明显。实际上没有,该文件已包含一个星期。整整一周,我一天工作超过7小时。直到昨天下午6点20分。
哦,今天早上我无法正确编译。昨天有大量的语法错误消息。今天早上,我能够编译。奇怪。对?然后我去定义了。
我花了一段时间才发现cs和designer.cs当然被排除在外,但是aspx文件却是。
我解决了这个问题。我的身材滑了吗?我不知道。
这是人们检查的一件事。您自己,其他人或系统在不知情的情况下意外地排除了cs文件。我知道这很奇怪,但它解决了这个问题。 Visual Studio中有一些奇怪的场景。人们可以提出200种解决方案他们99%的工作时间,但不是我们的情况。我只带了一个场景
答案 3 :(得分:2)
如果Visual Studio打开了文件,这也会发生,这些文件不在当前的解决方案中。
我不知道我是如何进入这种状态的,其中一个不同解决方案的文件打开,因为我没有手动打开它们,但快速检查文件路径显示那些不是打开的文件溶液
因此,“转到定义”已被禁用。
答案 4 :(得分:1)
我发现我必须删除我的TFS映射: VS 2010>打开团队资源管理器>深入研究团队项目>双击源代码控制>右键单击左窗格中的团队项目,然后执行“删除映射”>删除所有内容后,我手动转到本地文件夹并删除任何遗留文件>回到源代码管理资源管理器中我重新映射到同一本地文件夹并重新提取所有代码。现在,“转到定义”再次起作用。
不确定我为什么要这样做......
答案 5 :(得分:1)
我刚刚在Visual Studio 2019中基于CMake的C ++项目中发生了这种情况。昨天一切都很好,然后当我今天打开它时,每个文件中的所有“转到定义/声明”等选项均显示为灰色在项目中,即使对于同一文件中定义的内容(语法高亮显示也不正确)。如果我单独打开其中一个.cpp文件(不加载项目/解决方案),它确实起作用。
我尝试了各种方法,包括此处的答案,并告诉其再次生成CMake缓存,但最终解决的问题实际上是删除了CMake缓存。 Delete Cache选项似乎不起作用(所有文件仍保留在磁盘上,并且Output窗口中有一些失败消息),所以我只是从项目目录中删除了整个“ out”目录(嗯,以防万一)。再次加载Visual Studio,它会自动再次重新构建缓存,并且IntelliSense立即重新开始工作!我只需要等待5分钟,便可以在运行项目时再次编译所有内容。
也许没有必要删除整个“ out”目录,但是当我单击“ CMake Cache”菜单下的“在Explorer中打开”时,它会打开实际的构建目录(这是“ out”中唯一的东西”),因此我以为整个事情都与缓存有关,并且太讨厌它了,无法尝试进一步缩小范围。真的可能只是该目录中的某些文件。
答案 6 :(得分:1)
在我的 VS2019 中尝试了上述所有解决方案,没有任何效果。比我注意到右下角有一个更新标志。更新 VS 后,所有选项都已恢复。
答案 7 :(得分:0)
在我的情况下由于我的项目与TFS映射,所以我无法定义我的项目文件显示只读时从解决方案打开。所以我移动到使用TFS映射的根文件夹,然后right-clicked on folder > Go to properties > Attributes
部分为Read-Only
我取消选中它并单击Apply
。重新打开视觉工作室。现在一切都很好。
答案 8 :(得分:0)
检查黄色参考文献中的dll。删除它并再次添加。
答案 9 :(得分:0)
我在Visual Studio 2010
中遇到了这个问题。
对我来说,这种解决方案可以解决问题
和你很好。
答案 10 :(得分:0)
我在Visual Studio 2019版本中遇到了相同的问题。我遵循以下步骤:
转到解决方案中的“ references”文件夹。
单击“管理Nuget”程序包。
单击浏览。
搜索“ Microsoft.Net.Compilers”。
单击更新。
这对我有用。
答案 11 :(得分:-4)
只需使用Windows资源管理器打开解决方案,而不是从VS ...中打开它