Автоматически добавлять зависимости NuGet и использовать операторы в коде Visual Studio?

Я использую Visual Studio Code для разработки приложения ASP.NET 5 на Mac. Чтобы использовать новые классы (фреймворк или сторонние) в моем файле .cs, мне нужно

  1. Вручную добавьте зависимость NuGet в project.json, а затем
  2. Вручную добавьте оператор using в мой файл .cs.

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


person Nikolai Samteladze    schedule 25.12.2015    source источник


Ответы (2)


Что ж, как только я понял мои проблемы с IntelliSense (Visual Studio Code на Mac), мне больше не нужно вводить операторы using. IntelliSense на основе OmniSharp достаточно умен, чтобы предложить (Cmd + . на Mac) добавить их для меня:

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

Мне все еще нужно добавить зависимость NuGet вручную, но я думаю, что это поведение по умолчанию и в полной Visual Studio, и вам нужен ReSharper, чтобы стать умнее.

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

person Nikolai Samteladze    schedule 26.12.2015
comment
Между прочим, в Windows автоподсказка перестала работать, пока я не обновил OmniSharp. Спасибо за внимание. - person ruffin; 16.02.2018

К сожалению, насколько я знаю, короткий ответ - нет.

Visual Studio Code предназначен для легкого редактора, поэтому он не поддерживает функции, которые вы описываете, из коробки. Полная версия Visual Studio для Windows поддерживает это. Когда вы вводите имя класса/типа, который хотите использовать, например. JsonConvert обнаружит, что отсутствующий тип доступен в NuGet, и предложит вам загрузить правильный пакет и добавить оператор using. (На скриншоте у меня уже установлен пакет NuGet, поэтому нужно только добавить оператор using)

Roslyn Codefix

Эта функция доступна в версии Visual Studio Community, которую можно бесплатно загрузить с веб-сайта visualstudio.com. Это требует от вас запуска Windows, поэтому я не уверен, рассматриваете ли вы этот вариант.

Теперь о желаемом желаемом: VS Code в наши дни поддерживает расширения и обладает мощью движка Roslyn, поэтому теоретически кто-то может написать расширение, которое будет предлагать эту функциональность в будущем. Вы также можете попробовать добавить его в основной редактор, открыв задачу на GitHub: https://github.com/Microsoft/vscode/issues Боюсь, ни один из них не поможет вам в краткосрочной перспективе.

person Christiaan Rakowski    schedule 25.12.2015