Visual Studio 2012 - иногда исчезает / нарушается Intellisense


133

Мы с коллегами используем VS2012 уже несколько недель. Иногда после нескольких часов работы нарушается интеллектуальный смысл. После закрытия всех открытых вкладок он снова работает.

Есть ли еще люди с такой же проблемой? Это не может быть проблемой расширения, потому что у меня та же проблема дома. Может быть, есть обходной путь для этого?


2
Работает ли использование Ctrl+ Spaceпосле появления этой проблемы?
Саджад Хашми

7
Нет Ctrl + Пробел не имеет никакого эффекта
KroaX

2
Имея ту же проблему
MSBG

2
Visual Studio использует независимые реализации IntelliSense для каждого из поддерживаемых языков, поэтому ответ, вероятно, будет зависеть от конкретного используемого языка. Кроме того, несколько расширений Visual Studio изменяют, дополняют или даже полностью заменяют функции IntelliSense для одного или нескольких языков, что может изменить ответ, представленный здесь.
Сэм Харвелл,

Пожалуйста, проголосуйте в этом пользовательском счете, чтобы попросить аккорд с мягким сбросом, чтобы хотя бы смягчить это: visualstudio.uservoice.com/forums/121579-visual-studio/…
mattmanser

Ответы:


184

Вот несколько лучших решений для того, чтобы вернуть Visual Studio 2012 intellisense в порядок, попробовать их один за другим, надеюсь, одно из них решит проблему:

When the problem occurs next time follow these: начать с № 1 и перейти к следующему, если предыдущий не работает для вас

1: Close all the tabsи снова откройте свой файл. (Благодаря руссдс)

2: Clean the Build> Close the Solution> Restart Visual Studio> Open the Solutionснова

3: Goto: Edit> IntelliSense>Refresh Local Cache

4. Закройте Visual Studio 2012 и удалите эту папку: %AppData%\Microsoft\VisualStudio\11.0\ReflectedSchemas

5: Goto: TOOLS> Import and Export Settings>Reset all settings

6: Удалить .suoфайл в папке проекта. (Спасибо Джейсону Стилу)

Я надеюсь, что ваша проблема будет решена любым из вышеперечисленных шагов. Но если этого не произойдет, я думаю, вам стоит переустановить VS2012.


6
Не удалось # 1, так как этот пункт меню не существует в моем VS2012 (?). Не могу сделать # 2, так как эта папка не существует. Но после перезапуска VS2012 проблема исчезла.
Лассе Скиндстад Эберт

20
я не могу найти где-нибудь обновить локальный кэш там?
MonsterMMORPG

6
То же самое случилось со мной, ничего из вышеперечисленного не сработало, но закрытие всех вкладок сделало. Это должно быть первым вариантом в этом решении.
russds

1
Я работал над проектом в VS 2012, но папка отсутствует в VS 2013, и у меня все еще есть проблема. Я попытался удалить похожие GeneratedSchemas, но это тоже не сработало.
Джейсон Стил

1
@SajjadHashmi, что вы думаете о том, чтобы отредактировать свой ответ, включив в него шаг для удаления файла .suo? В этой ветке есть несколько комментариев и ответов с повышенным голосом, которые предлагают, и поэтому кажется, что это помогло бы другим иметь его в этом основном списке. Я предложил изменить этот вопрос сегодня, чтобы включить это, но мое редактирование было отклонено (по причинам, которые делают меня озадаченным и немного обескураженным). В любом случае, пожалуйста, учтите это незначительное дополнение к вашему ответу.
Pettys

19

Я использую Visual Studio 2012 и у меня та же проблема. Чтобы исправить это (когда Intellisense больше не работает), мне просто нужно закрыть текущую вкладку (в которой Intellisense не работает) и снова открыть ее ... и все в порядке ... нет необходимости закрывать Visual Studio или закрывать все Вкладки.


2
Это на самом деле работает для меня. Ударяет перезагрузка всего решения или перезапуск Visual Studio.
Говард Ренолет

Спасибо! Это тоже мой случай.
Хун

13

Перепробовал все. То, что РАБОТАЛО, - это удаление файла SUO. Это скрытый файл с именем SolutionName.v11.suo в каталоге решений:

  1. Закройте решение
  2. Убедитесь, что вы видите скрытые файлы.
  3. Сотрите файл suo.
  4. Откройте решение.

Вы потеряете рабочий стол решения (файлы не будут открываться автоматически в редакторе), но это небольшая цена, которую нужно заплатить, чтобы вернуть intellisense :)


Любые идеи относительно того, почему это происходит? Теперь я удаляю свои файлы sou 3 или более раз в день. Я не был изолирован ни от каких плагинов, но я предполагаю, что это Web Essentials или Power Tools.
Сковронек

1
@ Алон Гингольд - разве это не то, что я сказал 13 ноября? Во всяком случае, у меня установлены инструменты Xamarin, и мне стало интересно, есть ли у кого-нибудь еще проблемы с файлом .suo?
Джейсон Стил

У меня установлен xamarin и у меня нет ничего, кроме этой проблемы каждый день с Visual Studio 2013
TombMedia

13

Вам не нужно перезапускать Visual Studio. Вместо этого закройте текущее решение, а затем снова откройте его. Я надеюсь, что было более простое решение, хотя.

Обновление 4/16 : Для пользователей XAML решение, которое работает, так же просто, как преднамеренное нарушение вашего кода; этого должно быть достаточно, чтобы вернуть intellisense обратно. Больше здесь .

Не удалось проверить, работает ли это и для других типов кода, но если это так, оставьте комментарий.


7
Вам не нужно закрывать текущее решение. Вместо этого просто ОКНО> Закрыть все документы.
йойо

12

Удалите файл .suo. Попробуйте это, это сработало для меня после того, как все остальное не удалось.


Напоминает мне старые времена, когда нужно было делать файл .ncb доступным только для чтения, чтобы VS 2005 не мог его использовать и зависал при 30-минутном перелистывании на заголовках C ++.
Джон Харбор

6

У меня та же проблема. Для меня выбор конца самой последней строки файла, а затем сохранение файла (ctrl-s) решает проблему.


2

Прежде всего, я должен отметить, что со мной этого не происходило с тех пор, как я увеличил объем ОЗУ до 16 ГБ.

Это происходит, когда я копирую / вставляю элементы управления на страницу. Еще одним побочным эффектом этого является то, что файл designer.vb не обновляется сразу, и у меня нет доступа к этим элементам управления в коде позади.

Это порядок шагов, которые я прохожу:

  • Если кажется, что затронуто только 1 файл / окно, закройте / снова откройте этот файл.

В 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
  • У меня не было таких проблем с момента обновления моей оперативной памяти

1

У меня был какой-то плохой код xaml. Он не выдавал ошибку при компиляции, но по-прежнему мешал intelliSense правильно работать в файле xaml.

Чтобы устранить проблему, я удалил следующий код: Binding = "{Binding ReturnCode & Info}"

«&» - это проблема


1

Ничто из этого не сработало для меня, но я наконец заработал, отключив Resharper. Я не уверен, почему это было необходимо, потому что у меня есть другое решение LS, где intellisense работает нормально. Просто подумал, что я опубликую это на тот случай, если у кого-то будет такая же проблема, как и у меня.


1

Я сталкиваюсь с той же проблемой и решаю ее. Помните об этом, если вы работаете с Silverlight, любой некорректный код XAML может привести к сбою IntelliSense. Я предлагаю, если вы работаете с Silverlight, скомпилируйте свой проект для обнаружения неправильных кодов XAML и решите их на первом шаге, а если проблема не исчезнет, ​​то используйте вышеуказанные шаги.


1

Проблема с файлами .vcproj.

Вы найдете, если вы переключитесь в режим выпуска из режима отладки, выполните сборку, а затем попробуйте intellisense, это часто работает.

Закройте Visual Studio. Если вы ищете файлы .vcproj в своем проекте, отредактируйте их и найдите первые два экземпляра AdditionalIncludeDirectories. Значение для этого должно выглядеть примерно как ".. \, .... \", а не "../ ..".

Снова откройте ваш проект, дайте Intellisense закончить сборку, затем он должен быть исправлен.


Это исправило это для меня после переустановки VS не сделал.
SB2055

1

Шаги, чтобы следовать:

  1. Перейти в меню инструментов
  2. Нажмите «Настройки импорта и экспорта»
  3. Выберите «Сбросить все настройки». Нажмите кнопку "Далее
  4. Сделайте резервную копию ваших настроек. Нажмите кнопку "Далее
  5. Выберите параметры среды (например, параметры разработки Visual C #). Нажмите Готово.

Нет необходимости перезапускать Visual Studio.


1

У меня была проблема с бритвой Intellisense, которая вообще не работала ни в одном из моих проектов. Ни одно из исправлений выше не помогло мне. Я наконец смог решить проблему, изменив версию веб-страниц в веб-конфигурации на 2.0.0.0 вместо 3.0.0.0, показанного ниже:

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

Я надеюсь, что это помогает кому-то еще.


0

Ничто из вышеперечисленного не помогло исправить Intellisense на моем devbox (VS2012). Я даже попробовал "devenv / resetuserdata", что привело к необходимости переустановить все плагины.

Тем не менее, в проектах C ++ код в #if ABC ... блоки #endif остаются неактивными.

В качестве временного решения я изменяю #if ABC на #if 1 // ABC, а затем возвращаю изменения обратно после завершения редактирования блока. Досадно ...

РЕДАКТИРОВАТЬ: Несколько часов спустя я нашел лучшее решение. Я закомментировал «#define ABC 1» в заголовочном файле и добавил «ABC = 1;» в Свойства проекта-> C / C ++ -> Препроцессор-> Определения препроцессора. Тогда Intellisense начал работать правильно! Блоки кода не отображаются серым цветом.


Настройки Visual Studio по умолчанию затеняют весь код, который компилятор пропустит из-за таких директив компилятора, как #if. Если определенные константы изменяются при изменении активной конфигурации (например, #define debugона часто устанавливается в режиме отладки, но отсутствует в режиме выпуска), то часть кода, выделенная серым цветом, изменится.
Зарепет

0

У меня была похожая проблема в Visual Studio 2013, я просто очистил решение, а затем удалил 4: Закройте Visual Studio 2013 и удалите эту папку: %AppData%\Microsoft\VisualStudio\12.0и это решило проблему.


0

Я изолировал свои проблемы из-за того, что VS Power Tools повредил * .suo. Закрытие VS, удаление .suo, затем повторное открытие решает проблему. Он также удаляет все личные настройки для этого решения.

Другое, менее разрушительное решение, с которым я столкнулся, состоит в том, чтобы использовать команду «Редактировать файл проекта», а затем перезагрузить проект, чтобы заставить intellisense работать снова.

Надеюсь, это поможет другим.


0

для VS2013 - проект ASP.NET MVC 5, простой способ исправить это - выгрузить и перезагрузить конкретный проект.


0

Для проекта Python я удалил скрытую папку .vs, файл .sln и файл .pyproj. Затем я воссоздал проект из существующего кода, и Intellisense снова работает.


0

Закрытие вкладки, которая не работает, сделало это для меня.

ps я бы сохранил заранее, на случай, если VS будет странным;)

Да, и это сочетание клавиш Ctrl + Alt + Пробел (для переключения между предложением и стандартным режимом завершения)


0

Я сталкивался с этой проблемой несколько раз, и я все еще сталкиваюсь с этим также.

Решение, которое работало для меня, состояло в том, чтобы уменьшить длину пути, на котором находится решение. Я поместил решение ближе к диску C (c: /code/your_project.sln), и оно только что решило проблему intellisense. Это всегда решает проблему.


-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 не работает с файлом, который не помечен для компиляции.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.