Visual Studio 2012-智能感知有时会消失/损坏


133

我和我的同事们在使用VS2012已有数周了。有时在工作几个小时后,智能感知就坏了。关闭所有打开的选项卡后,它将再次起作用。

还有更多的人有同样的问题吗?不可能是扩展问题,因为我在家也有同样的问题。也许对此有解决方法?


2
出现此问题后,使用Ctrl+ 是否Space有效?
SajjadHashmi

7
无Ctrl +空格键确实没有任何效果
KroaX

2
有同样的问题
msbg

2
Visual Studio为其每种受支持的语言使用IntelliSense的独立实现,因此答案可能取决于所使用的特定语言。此外,一些Visual Studio扩展更改,增强或什至完全替代了一种或多种语言的IntelliSense功能,这很可能会更改此处提供的答案。
Sam Harwell

请投这个UserVoice的要求一个软复位和弦至少减轻这样的:visualstudio.uservoice.com/forums/121579-visual-studio/...
mattmanser

Answers:


184

这些是使Visual Studio 2012 intellisense重回正轨的几种最佳解决方案,请尝试一种,希望其中一种可以解决该问题:

When the problem occurs next time follow these: 从#1开始,如果较早的版本对您不起作用,则移至下一个

1:Close all the tabs然后再次打开文件。(感谢russds)

2:Clean the Build> Close the Solution> Restart Visual Studio> Open the Solution再次

3:转到: Edit> IntelliSense>Refresh Local Cache

4:关闭Visual Studio 2012并删除此文件夹: %AppData%\Microsoft\VisualStudio\11.0\ReflectedSchemas

5:转到:TOOLS> Import and Export Settings>Reset all settings

6:删除.suo项目文件夹中的文件。(感谢Jason Steele)

希望以上六个步骤中的任何一个都能解决您的问题。但是,如果这还不能解决所有问题,那么我认为您应该考虑重新安装VS2012。


6
我的VS2012(?)中不存在该菜单项,因此无法排名第一。无法执行#2,因为该文件夹不存在。但是重新启动VS2012后,问题消失了。
Lasse Skindstad Ebert

20
我找不到在那里刷新本地缓存的任何地方?
MonsterMMORPG,

6
我也遇到了同样的情况,以上都不起作用,但是关闭所有选项卡却起作用了。这应该是该解决方案中的选择之一。
russds 2013年

1
4在VS 2012中为该项目工作,但在VS 2013中不存在该文件夹,但仍然存在问题。我试着删除看起来相似的GeneratedSchemas,但是那也不起作用。
杰森·斯蒂尔

1
@SajjadHashmi,您如何编辑答案以包括删除.suo文件的步骤?此主题中有数条评论和高票建议的答案,因此似乎可以帮助其他人将其包含在此主列表中。我今天提议对此问题进行编辑,以包括该问题,但是我的编辑被拒绝了(由于使我感到困惑和沮丧的原因)。无论如何,请考虑在您的答案中添加少量内容。
小资

19

我使用Visual Studio 2012,但遇到相同的问题。Ti修复它(当Intellisense不再工作时),我只需要关闭当前选项卡(在Intellisense无法工作的情况下)并重新安装它即可,并且一切正常……无需关闭Visual Studio或全部关闭标签。


2
这实际上为我工作。可以重新加载整个解决方案或重新启动Visual Studio。
2013年

谢谢!这也是我的情况。

13

尝试了一切。那件事保护正常工作被删除SUO文件。它是解决方案目录中一个名为SolutionName.v11.suo的隐藏文件:

  1. 关闭解决方案
  2. 确保您可以看到隐藏文件。
  3. 删除suo文件。
  4. 重新打开解决方案。

您将松开解决方案桌面(不会在编辑器中自动打开任何文件),但是要收回intelisense,这是一个很小的代价:)


有什么想法为什么会这样?我现在每天删除我的sou文件3次或更多次。我还没有隔离到任何插件,但是我猜它是Web Essentials或Power Tools。
Skowronek

1
@Alon Gingold-这不就是我11月13日所说的吗?无论如何,我已经安装了Xamarin工具,并且想知道是否还有其他人对.suo文件有问题呢?
杰森·斯蒂尔2014年

我安装了xamarin,而Visual Studio 2013每天都没有这个问题
TombMedia

13

您无需重新启动Visual Studio。而是,关闭当前解决方案,然后再次重新打开。我希望有一个更简单的解决方案。

更新4/16:对于XAML用户而言,一种有效的解决方案就像故意破坏您的代码一样简单。这应该足以取回智能感知。在这里更多

无法验证这是否也适用于其他类型的代码,但如果可行,请发表评论。


7
您无需关闭当前解决方案。相反,只需打开窗口>关闭所有文档。
2013年

12

删除.suo文件。试试这个,在其他所有方法都失败之后,它对我有用。


让我想起了过去,必须将.ncb文件设置为只读,以便VS 2005无法使用它并在C ++标头上搅动30分钟时挂断电话。
乔恩·哈伯

6

我也有同样的问题。对我来说,选择文件最后一行的末尾,然后保存文件(ctrl-s)可以解决此问题。


2

我首先要注意,自从将RAM升级到16GB以来,这还没有发生。

当我在页面上复制/粘贴控件时,似乎会发生这种情况。这样做的另一个副作用是,designer.vb文件不会立即更新,因此我无法访问后面代码中的那些控件。

这是我经历的步骤顺序:

  • 如果似乎只有一个文件/窗口受影响,请关闭/重新打开该文件。

在Visual Studio中:

  1. 单击工具->选项->文本编辑器->所有语言->常规
  2. 取消选中“自动列出成员”
  3. 取消选中“参数信息”
  4. 选中“自动列出成员”(是,您刚刚取消选中的那个)
  5. 选中“参数信息”(同样,您刚刚取消选中的那个)
  6. 点击确定

如果这不起作用,请尝试以下几个步骤:

  1. 如果仍然无法正常工作,请关闭所有窗口并重新打开
  2. 如果仍然无法正常工作,请关闭/重新打开解决方案
  3. 如果仍然无法正常工作,请重新启动VS。

对于C ++项目:
MSDN有一些尝试的方法:MSDN建议

损坏的.ncb文件似乎很有可能。

从MSDN:

  1. 关闭解决方案。
  2. 删除.ncb文件。
  3. 重新打开解决方案。(这将创建一个新.ncb文件。)

(我还没有弄清楚为什么在某些情况下需要采取更严厉的措施。)

  • 在VS 2013/15中测试
  • 自升级RAM以来,我还没有遇到过这个问题

1

我有一些不好的xaml代码。它在编译时没有给出错误,但仍在阻止intelliSense在xaml文件中正常工作。

我删除了以下代码以解决该问题:Binding =“ {Binding ReturnCode&Info}”

问题是“&”


1

这些对我都不起作用,但是我最终通过禁用Resharper使它起作用。我不确定为什么有必要,因为我有另一个LS解决方案,其中intelisense可以正常工作。只是以为我会发布它,以防其他人遇到与我相同的问题。


1

我遇到同样的问题并解决。请记住,如果您使用Silverlight,则任何不正确的XAML代码都可能使IntelliSense崩溃。我建议如果您使用Silverlight,请编译您的项目以检测不正确的XAML代码,并在第一步中解决它们,如果问题仍然存在,请使用上述步骤。


1

问题在于.vcproj文件。

您会发现是否从调试模式切换到发布模式,进行构建,然后尝试intellisense通常有效。

关闭Visual Studio。如果您在项目中搜索.vcproj文件,请对其进行编辑并搜索AdditionalIncludeDirectories的前两个实例。其值应类似于“ .. \,.... \”而不是“ ../ ..”。

重新打开您的项目,让Intellisense完成构建,然后应将其修复。


这在我重新安装VS后没有为我修复。
SB2055 '16

1

遵循的步骤:

  1. 转到工具菜单
  2. 点击“导入和导出设置”
  3. 选择“重置所有设置”。点击下一步
  4. 备份您的设置。点击下一步
  5. 选择您的环境设置(例如Visual C#开发设置)。单击完成。

无需重新启动Visual Studio。


1

我有一个剃刀Intellisense的问题在我的一个项目中根本无法正常工作。上面的修复都不适合我。通过将Web配置中的网页版本更改为2.0.0.0而不是下面显示的3.0.0.0,我终于能够解决此问题:

<appSettings>
   <add key="webpages:Version" value="2.0.0.0" />
   ...
</appSettings>

我希望这可以帮助其他人。


0

以上所有内容均未帮助修复我的devbox(VS2012)上的Intellisense。我什至尝试了“ devenv / resetuserdata”,这导致必须重新安装所有插件。

不过,在C ++项目中,#if ABC ... #endif块中的代码保持灰色。

作为临时的解决方法,我将#if ABC修改为#if 1 // ABC,然后在完成编辑块后将更改还原回去。烦人...

编辑:几个小时后,我找到了更好的解决方案。我在头文件中注释了“ #define ABC 1”,并添加了“ ABC = 1;”。到项目属性-> C / C ++->预处理程序->预处理程序定义。然后,Intellisense开始正常工作!代码块未变灰。


Visual Studio的默认设置将灰显所有由于编译器指令(例如)而将跳过的代码#if。如果在您的活动配置更改时定义的常量发生更改(例如,#define debug通常在Debug模式下设置,而在Release模式下不存在),则代码的变灰部分将更改。
Zarepheth,2015年

0

我在Visual Studio 2013中遇到类似的问题,我只是清理了解决方案,然后删除了4:关闭Visual Studio 2013并删除此文件夹:%AppData%\Microsoft\VisualStudio\12.0它解决了问题。


0

我发现问题与VS Power Tools损坏* .suo有关。关闭VS,删除.suo,然后重新打开即可解决此问题。它还会删除该解决方案的所有个人设置。

我遇到过的另一个破坏性较小的解决方案是使用“编辑项目文件”功能命令,然后重新加载项目以使智能感知再次起作用。

希望对别人有帮助。



0

对于一个Python项目,我最终删除了隐藏的.vs文件夹,.sln文件和.pyproj文件。然后,我根据现有代码重新创建了该项目,Intellisense再次正常工作。


0

关闭不起作用的选项卡对我来说有用。

ps我会事先保存,以防万一VS;)

哦,快捷方式是Ctrl + Alt +空格键(在建议和标准完成模式之间切换)


0

我多次面对这个问题,但现在仍然面对。

对我有效的解决方案是缩短放置解决方案的路径的长度。我将解决方案放置在离C驱动器(c:/code/your_project.sln)更近的地方,它仅解决了智能感知问题。这始终可以解决问题。


-1

以上都不对我有用。在仔细检查时,我注意到intellisense对某些文件有效,但对所有文件无效。然后发现它只是一个文件。最后打开.proj文件,其中包含:

  <ItemGroup>
<None Include="App.config" />
<None Include="packages.config" />
<Compile Include="Generator.cs" />
<Compile Include="PDFDocument2.cs" />
<None Include="PDFDocument.cs" />
<Compile Include="PdfDaemon.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />

当然,Intellisense不适用于未标记为要编译的文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.