Использование автоматического импорта не работает Visual Studio 2019

У меня есть следующая выборочная проблема с VS 2019 и IntelliSense.

Когда я начинаю вводить имя класса, пространство имен которого еще не импортировано, IntelliSense предлагает его в столбце автозаполнения. Как только я нажимаю tab вместо того, чтобы заполнять имя и импортировать директивы использования, он автоматически заполняет весь путь, например:

Ввод 'UserView...' -> App.Web.Areas.Users.ViewModels.UserViewModel

вместо импорта -> using App.Web.Areas.Users.ViewModels; и завершения ввода только UserViewModel

Но если я напишу полное имя класса, а затем нажму Ctrl + ., то IntelliSense импортирует директиву using.

Кто-нибудь знает, какая настройка вызывает такое поведение?


person Kia Kaha    schedule 14.10.2020    source источник
comment
Хм, что is new заключается в том, что отображается имя из неиспользуемого пространства имен. Щелкните значок + внизу, чтобы отключить эту функцию. Помощь › Отправить отзыв › Сообщить об ошибке, чтобы пожаловаться на то, что это не работает так, как описано в документации.   -  person Hans Passant    schedule 14.10.2020
comment
У меня эта настройка включена, выключение не помогает. Спасибо за совет - я сообщил о проблеме. Хотя я делаю что-то не так   -  person Kia Kaha    schedule 14.10.2020


Ответы (1)


На самом деле, я не сталкивался с той же проблемой на своем ПК.

Моя версия Visual Studio 201916.7.5 без каких-либо сторонних расширений и расширений, и я использовал Newtonsoft.Json.dll.

На самом деле вам следует включить параметр Show items from unimported namespaces, и он будет импортировать using Newtonsoft.Json; автоматически, когда вы используете TAB для завершения кода.

На моей стороне я набрал json, а затем использовал TAB, чтобы завершить класс JsonArrayAttribute. И я не сталкивался с проблемой, как вы описали.

введите здесь описание изображения

Поэтому я смущен тем, почему это произошло на вашей стороне.

Или вы можете попробовать следующие шаги:

1) Если у вас не последняя версия VS2019, обновите ее до последней версии, и новая версия добавит самые последние и наиболее полные функции.

2) отключите любые сторонние расширения, а не установленные, в разделе Расширения --›Управление расширениями, если вы установили некоторые расширения, вызвавшие это.

3) сбросить настройки в разделе Инструменты --›Импорт и экспорт настроек --›Сбросить все настройки

4) после этого закройте VS, удалите .vs скрытую папку в папке вашего решения, папки bin и obj. Затем перезапустите проект, чтобы снова протестировать его.

Кроме того, если я неправильно понял вашу проблему, укажите и предоставьте любую подробную информацию, чтобы описать проблему, чтобы помочь нам быстро устранить ее.

person Mr Qian    schedule 15.10.2020
comment
Спасибо друг! Не верил, что это может решить проблему, но обновил до последней версии, и проблема исчезла - на этот раз легко спасти! Молодец - person Kia Kaha; 19.10.2020
comment
где этот вариант? Show items from unimported namespaces - person Joke Huang; 21.03.2021