Visual Studio 2013 IntelliSense перестает работать для ASP.NET контроллеры MVC5

Я сталкиваюсь со странной проблемой в моей Visual Studio 2013 ASP.NET проект MVC 5. Внезапно IntelliSense в классах контроллеров проекта MVC 5 не работает вообще.

У меня есть другие проекты библиотеки классов в моем решении, и IntelliSense работает в этих файлах проекта библиотеки классов, но проблема только в проекте MVC. Обычно эти проблемы решаются путем перезапуска Visual Studio: я не только перезапустил Visual Studio, но и перезапустил мой компьютер, и проблема IntelliSense не фиксируется вообще.

есть ли другие шаги,которые могут вернуть мне IntelliSense?

25 ответов


Закройте Visual Studio. Удалите .В12.файл suo. Откройте решение.


Сброс настроек или импорт ранее экспортированных рабочих настроек,и перезапуск Visual Studio работал:Tools > Import and Export Settings... > Reset all settings.

EDIT: это продолжает происходить со мной, удивительно часто в VS Express, а иногда и в VS Professional. Одна вещь, которую я заметил в Pro, - это то, что это произошло после неожиданных отключений (когда он заставляет перезагрузку посреди ночи). Таким образом, это может быть связано с неправильным закрытием Visual Studio. Описанная выше методика имеет каждый раз срабатывало.


Инструменты > Параметры > Текстовый Редактор > C# > Общие

убедитесь, что" Auto List Members " установлен


Я нашел один способ решить проблему. То есть, 1. - >Удалить ASP.NET проект MVC из решения, 2. - >Затем добавьте проект MVC обратно в решение.

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

EDIT:

наконец, я понял, что это было стороннее расширение visual studio, которое вызывало проблему. Чтобы узнать это расширение, я удалил все расширения, а затем добавил расширения один за другим и остановился, где я нашел расширение виновника, которое забирало мой сон :).


вы можете выгрузить проект и перезагрузить проект MVC из решения

  1. щелкните правой кнопкой мыши на проекте MVC в обозревателе решений - > "выгрузить проект"
  2. щелкните правой кнопкой мыши на проекте MVC в обозревателе решений - > "перезагрузить проект"

после этого Intellesense быстро перерабатывается.


  • Сервис -> Параметры
  • Текстовый Редактор - > C# - > Intellisense
  • убедитесь, что флажок" Показать список завершения после ввода символа " установлен

VS2013 завершение кода intellisense


Я не уверен, почему это происходит, но когда это происходит со мной, я могу восстановить Intellisense, просто перезапустив Visual Studio.

вы правы, это действительно раздражает.


иногда сброс настроек VS может помочь:

инструменты - > мастер импорта и экспорта настроек - > сбросить все настройки - > флажок "нет, просто сбросить настройки, перезаписать мои текущие настройки" - >далее>Далее>Далее

Я испортил их с RESHARPER, и это помогло.


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


Я обнаружил, что если сборка терпит неудачу, то Intellisense, кажется, ломается. После исправления ошибок сборки и восстановления проекта Intellisense будет работать после перезагрузки конкретного файла Razor.


в моем случае перезагрузка не сработала.

поэтому я сделал следующие странные шаги:

  1. закрыто решение
  2. открыл другое решение
  3. проверено, что intellisense работал в этом другом решении.
  4. закрыто другое решение
  5. наконец, снова открыл первое решение.

и intellisense снова работал.


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

кроме того, вы можете попытаться принудительно сбросить

Ctrl+K, Ctrl+I показывает быструю информацию Ctrl + Shift+пробел показывает вам param info


Я пробовал много вещей, которые не работали. В конце концов, я вырезал код в буфер обмена, воссоздал контроллер и вставил код. Проблема решена!


у меня тоже есть такая же проблема с IntelliSense в моем текстовом редакторе.

Я просто close пример.cs-файл, который не предоставляет Intellisense и снова откройте этот класс без перезапуска Visual Studio это работать на меня.

Примечание: у меня нет такой же проблемы со всеми .CS файл в обозревателе решений


Я использую VS 2013 и у меня была такая же проблема. Моим решением было обновление VS до последней версии. I обновление моего дела 4. Просто ссылка в проекте должна соответствовать сборке в GAC на компьютере (ОС). Intellisense происходит от VS, а не от проекта.

Я надеюсь, что это будет удобно для кого-то.


... Еще один ответ - но это было причиной моей боли: я установлено Помощник Разработчика который работал хорошо, но внезапно перестал предоставлять предложения. Чтобы заставить его работать снова:

параметры - > помощник разработчика - > Intellisense - > по умолчанию Visual Studio Intellisense

Мне потребовалось 5 часов, чтобы найти это : (

HTH.


Tools->Options->Text Editor->C# (or All Languages)->General

установите флажок enable Auto List Members и Parameter Information в правой боковой панели.

если он не выбран,выберите его.


сохраните все и перезапустите Visual Studio!


Я получаю то же самое каждый раз, когда я работаю с одним конкретным проектом MVC5. Перезапуск VS2013 не работает. Удаление файлов suo не работает. Сброс всех настроек инструментов не работает. Единственное, что когда-либо работает, это удаление проекта из решения и добавление его снова. Видя, как я должен делать это каждый день, это действительно очень раздражает. Особенно, когда у меня есть набор для повторного открытия последних файлов, которые я открыл, мне нужно отследить те, над которыми я работал, и снова открыть их вместо выскакивает автоматически..


Я использую VS 2013 с MVC 5. Решением для меня было добавить следующее В Web.config:

<compilation debug="true" targetFramework="4.5.1">
  <assemblies>
    <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>
</compilation>

решение Rushonerok отлично работает для меня.
для тех, кто не знает: .В12.СУО-это скрытый файл в корневой папке проекта. Вы должны установить на "Показать скрытые файлы" в вашем браузере файлов, чтобы увидеть его.


до сих пор некоторые из этих решений не работал для меня.

у меня есть следующий обходной путь

просто объявите тип, который вы хотите использовать явно в новой переменной, и используйте его вместо Model.

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain

чтобы решить эту проблему, я закрыл Visual Studio Express 2013 и снова открыл решение, но дважды щелкнув его .sln файл непосредственно из файловой системы. Открыв его с начальной страницы, Мои контроллеры intellisense сломались.


закрытие и открытие решения Visual Studio работали для меня.


иногда вы закрываете его по ошибке. Попробуй!--0--> или cmd+space для Mac, чтобы включить его.