59

我注意到,一旦我的项目达到一定大小(在我的情况下约为 4,100 行代码), Visual Studio中的自动完成功能将不再正常工作。我还注意到,一旦第三方库的数量增加(命名空间和类属性和方法不再可见),性能也会下降。

有没有办法手动更新自动完成数据库或为现有项目创建一个新数据库?

我目前在Visual Studio 2008下工作,但我在Visual Studio 2010中也遇到过这个问题。

4

8 回答 8

61

对于 VS2015、2017 和 VS2019,关闭 Visual Studio 并删除与解决方案相同的文件夹中的 .vs 文件夹。它包含 intellisense 数据库等内容(如果我们知道哪些文件,应该可以只删除特定于 intellisense 的文件)。请注意,如果您删除整个文件夹,您将丢失窗口布局配置等。

对于以前的版本,请关闭 Visual Studio 并导航到您的项目文件夹。那里的 *.sdf 文件包含智能感知数据库 - 如果您删除此文件并在 Visual Studio 中重新打开您的项目,它会重建缓存。

删除 sdf 文件为我解决了这个问题。

有时使用大型解决方案(主要是 C++ 项目)会变得非常缓慢。要修复它,您需要关闭解决方案并删除 .SDF 文件。之后它会再次恢复正常,大约一周左右,直到你需要再次这样做。

根本原因是 SDF 文件碎片化,根据我所做的 xperf 分析,VS 有时会在调试和发布之间更改时对其进行 20,000 多次随机读取。将 SDF 文件放在 SSD 上可以解决问题,但不是必需的。VS 需要更有效地使用 SDF 文件,并且永远不要阻塞 SDF 操作。

来源:https ://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2255455-fix-the-delete-sdf-file-problem

于 2014-07-08T08:05:13.343 回答
11

在 VS2017 中,当我使用互操作从 C# 调用 CPP 时,我经常遇到这种情况,当 CPP 方面发生某些变化时......例如构造函数参数。

卸载并重新加载解决方案中的CPP项目有助于解决红线。

于 2018-03-07T16:26:01.133 回答
7

我正在使用 Visual Studio 2019,并且在使用 Intellisense 以及其他功能时也遇到了问题。在 Intellisense 停止使用代码格式化之前,我将能够完成大约 2 或 3 次文件更新。

我能够让事情再次正常工作的唯一方法是重新启动 Visual Studio,我尝试删除 intellisense 文件夹和整个.vs文件夹,但这并没有解决问题,它有所帮助,但还有其他事情发生。

我终于能够通过关闭Track changes下面的选项来解决这个问题

Tools->Options->Text Editor->General.

在此处输入图像描述

于 2019-06-12T10:21:07.183 回答
3

右键单击解决方案,然后按“重新扫描解决方案”。它似乎对我有用。 突出显示操作的菜单屏幕截图

于 2021-09-01T00:32:43.023 回答
3

在验证了 3 月 15 日 daniol 的结果后,我进入 .vs 文件夹 -> {MyProject} 文件夹 -> DesignTimeBuild 文件夹并删除了 .dbtcache 文件,Intellisense 现在可以“智能”地工作,不会丢失窗口布局或其他 .suo 信息。我怀疑 eq_ 在 1 月 4 日提供的“Diagnostics.DTBBLog”命令做了同样的事情,但该命令似乎不再可用,至少按这个名称。

于 2021-07-13T23:45:40.597 回答
3

对于 Visual Studio 2017(我也认为是 Visual Studio 2019),关闭 Visual Studio,进入项目文件夹中的 .vs 文件夹并删除 .suo 文件之外的所有内容,然后重新打开 Visual Studio。

这样,您可以重建 Intellisense 缓存而不会丢失您的偏好。

于 2019-05-17T10:09:40.347 回答
1

在 Visual Studio 2022 中,打开工具 -> 选项 -> [在搜索框中输入“数据库”] -> 文本编辑器 -> C/C++ -> 高级 -> 重新创建数据库 = TRUE,然后重新打开解决方案。 在此处输入图像描述

于 2022-02-05T00:28:02.873 回答
-1

对于 Visual Studio 2017(主要使用 C# 项目),以下内容一直对我有用:

  • 打开命令窗口(查看/其他窗口/命令窗口)[Ctrl+W,A]
  • 输入命令“Diagnostics.DTBBLog”并回车

无需关闭解决方案并重新加载等。发现对于 Visual Studio 2019,此命令已被删除,这是毁灭性的……

于 2021-01-04T11:59:04.473 回答