Руководство по повышению производительности работы в Visual Studio для разработчиков на платформе C#
Узнайте, как Visual Studio делает разработчиков .NET , использующих C# более продуктивным, чем когда-либо. Воспользуйтесь новыми возможностями для повышения производительности и эффективности работы, такими как переход к декомпилированным сборкам, варианты имен переменных, предлагаемые в процессе ввода, иерархическое представление в обозревателе тестов, команда "Перейти ко всем" (CTRL+T) для перехода к объявлениям файлов, типов, членов и символов, интеллектуальный помощник по исправлению ошибок, настройка и применение стиля кода, а также разнообразные возможности рефакторинга и исправления ошибок в коде.
Общие сведения о производительности для .NET, C++и других языков см . в руководстве по повышению производительности для Visual Studio. Сведения о полезных сочетаниях клавиш см. в этой статье. Полный список команд с сочетаниями клавиш см. в статье Сочетания клавиш по умолчанию.
Использование сочетаний клавиш из другого редактора
Если вы переходите из другой интегрированной среды разработки или среды написания кода, вы можете изменить схему клавиатуры на Visual Studio Code или ReSharper (Visual Studio):
Некоторые расширения также предоставляют схемы клавиатуры.
Ниже приведены широко используемые сочетания клавиш в Visual Studio.
Сочетание клавиш (все профили) | Команда | Description |
---|---|---|
CTRL+T | Перейти ко всем | Переход к любому объявлению файла, типа, элемента или символа |
F12 (также CTRL+щелчок) | Перейти к определению | Переход к месту определения символа |
Ctrl+F12 | Перейти к реализации | Переход от любого базового типа или элемента к его различным реализациям |
Shift+F12 | Найти все ссылки | Просмотр всех символьных или литеральных ссылок |
ALT+HOME | Перейти к базовому | Переход вверх по цепочке наследования |
CTRL+. (также ALT+ВВОД в профиле C#) | Быстрые действия и рефакторинг | Просмотр доступных исправлений кода, действия для создания кода, операций рефакторинга или других быстрых действий в выбранной позиции курсора или для выбранного кода |
CTRL+D | Дублировать строку | Дублирует строку кода, в которую находится курсор |
SHIFT+ALT++/- | Расширение или сужение выделенного фрагмента | Разворачивает или контрактирует текущий выбор в редакторе |
SHIFT + ALT + . | Переместить курсор на следующее совпадение | Добавляет выделение и забор в следующем расположении, которое соответствует текущему выбору |
CTRL+Q | Search | Поиск всех параметров Visual Studio |
F5 | Начать отладку | Начало отладки приложения |
Ctrl+F5 | Запуск без отладки | Запуск приложения без отладки |
CTRL+K,D (профиль по умолчанию) или CTRL+E,D (профиль C#) | Форматировать документ | Очистка нарушений форматирования в файле на основе заданных параметров перевода строки, интервалов и отступов |
CTRL+\,CTRL+E (профиль по умолчанию) или CTRL+W,E (профиль C#) | Просмотреть список ошибок | Просмотр всех ошибок в документе, проекте или решении |
Alt + PgUp или PgDn | Перейти к следующей или предыдущей проблеме | Переход к предыдущей или следующей ошибке, предупреждению, предложению в документе |
Ctrl+K,/ | Переключение режима однострочного комментария | Эта команда добавляет или удаляет метку однострочного комментария в зависимости от того, указана ли она для выделенного фрагмента кода. |
Ctrl+Shift+/ | Переключение режима блочного комментария | Эта команда добавляет или удаляет примечания блоков в зависимости от выбранного вами действия. |
Примечание.
Некоторые расширения отменяют привязку настраиваемых сочетаний клавиш по умолчанию в Visual Studio. Вы можете восстановить привязки ключей по умолчанию, перейдя в раздел "Сервис>импорта и экспорта" Параметры> Reset всех параметров или сброса клавиш "Параметры>>инструментов".>
Дополнительные сведения о сочетаниях клавиш и командах см. в разделе "Сочетания клавиш". Кроме того, ознакомьтесь с сочетаниями клавиш в Visual Studio , чтобы получить полный список вместе с скачиваемым памяткой.
Быстрый переход к файлам или типам
Visual Studio имеет функцию Go To All , которую можно использовать для быстрого перехода к любому файлу, типу, члену или объявлению символов. Чтобы открыть его в строке меню, выберите "Изменить>перейти ко>всем". Кроме того, его можно открыть с помощью сочетания клавиш CTRL+T.
В верхней правой части редактора кода отображается небольшое окно.
Эту функцию можно использовать для выполнения следующих действий:
- Измените расположение панели поиска или отключите предварительную версию динамической навигации с помощью значка шестеренки.
- Фильтрация результатов с помощью синтаксиса, например
t mytype
. - Область поиска можно ограничить текущим документом.
- При сопоставлении поддерживается "верблюжий" стиль.
Дополнительные сведения о переходе ко всем см. в разделе "Поиск кода" с помощью команд "Перейти к".
Принудительное применение правил стиля кода
В файле EditorConfig можно определить соглашения о стиле кода, чтобы перемещать их вместе с исходным кодом.
- Добавьте значение по умолчанию или . Файл EditorConfig в стиле NET в проект, выбрав пункт "Добавить новый элемент" в всплывающем меню "Добавить>контекстное меню" в Обозреватель решений. Затем в диалоговом окне "Добавление нового элемента" найдите "editorconfig". Выберите любой из шаблонов файла editorconfig, а затем щелкните Добавить.
- Автоматически создайте файл .editorconfig для выбранных параметров стиля кода, последовательно выбрав элементы Сервис>Параметры>Текстовый редактор>C#>Стиль кода.
Функция вывода кода IntelliCode для Visual Studio определяет стили кода из существующего кода. Затем он создает файл nonempty EditorConfig с уже определенными параметрами стиля кода.
Настройте уровень серьезности для правила стиля кода непосредственно в редакторе. Если у вас нет файла editorconfig, Visual Studio создает его для вас. Поместите курсор на ошибку, предупреждение или предложение и введите ctrl+. Чтобы открыть меню быстрых действий и рефакторингов. Выберите пункт Настройка или подавление проблем. Затем выберите правило и уровень серьезности, который нужно настроить для него. Это действие обновляет существующий EditorConfig с новой серьезностью правила.
Ознакомьтесь с документацией по параметрам правила в стиле кода .NET, которая также содержит пример полного файла EditorConfig.
Очистка кода
В Visual Studio можно по запросу форматировать файл кода, в том числе параметры стиля кода, с помощью функции Очистка кода. Чтобы запустить очистку кода, выберите значок метки в нижней части редактора или нажмите клавиши CTRL+K, CTRL+E.
Вы также можете выполнить очистку кода для всего проекта или решения сразу. Щелкните правой кнопкой мыши имя проекта или решения в Обозреватель решений, выберите "Анализ и очистка кода", а затем нажмите кнопку "Выполнить очистку кода".
Помимо форматирования пробелов, отступов и т. п. функция Очистка кода применяет в выбранном файле настроенные стили кода. Ваши настройки для каждого стиля кода считываются из файла EditorConfig, если такой существует в проекте, или из раздела Параметры стиля кода, который доступен через диалоговое окно Параметры.
Рефакторинг и исправления кода
В Visual Studio включено множество возможностей рефакторинга, действий по созданию кода и исправлений кода. Красной волнистой линией обозначаются ошибки, зеленой волнистой линией — предупреждения, а тремя серыми точками — предлагаемые варианты кода. Вы можете получить доступ к исправлениям кода, выбрав значок лампочки или отвертки, или нажав клавиши CTRL+ или ALT+ВВОД. Для каждого исправления отображается окно предварительного просмотра, в котором в реальном времени можно увидеть, как будет работать исправление.
Популярные исправления и операции рефакторинга:
- Переименовать
- Извлечение метода
- Изменение сигнатуры метода
- Создание конструктора
- Создание метода
- Перемещение типа в файл
- Добавление проверки значений NULL
- Добавить параметр
- Удаление ненужных директив using
- Преобразование цикла Foreach в запрос LINQ или метод LINQ
- Подъем элементов
Дополнительные сведения см. в статье Возможности создания кода в Visual Studio.
Анализаторы .NET можно установить для флага проблем с кодом. Вы также можете создать собственные исправления кода или операции рефакторинга с помощью анализаторов Roslyn.
Несколько членов сообщества написали бесплатные расширения, которые добавляют дополнительные проверки кода:
Функции поиска использования, перехода к реализации и перехода к декомпилированным сборкам
Visual Studio обладает множеством функций, упрощающих навигацию и поиск по коду.
Компонент | Ярлык | Сведения и усовершенствования |
---|---|---|
Найти все ссылки | Shift+F12 | Результаты выделяются цветом и могут быть сгруппированы по проекту, определению и ссылочному типу, например read или write. Можно также "блокировать" результаты. |
Перейти к реализации | Ctrl+F12 | Вы можете использовать команду "Перейти к определению" для ключевого слова override , чтобы перейти к переопределяемому члену. |
Перейти к определению | F12 или CTRL+щелчок | Удерживайте клавишу CTRL во время щелчка, чтобы перейти к определению. |
Показать определение | ALT+F12 | Встроенное представление определения |
Визуализатор структуры | Серые пунктирные линии между фигурными скобками | Наведите указатель мыши для просмотра структуры кода |
Переход к декомпилированным сборкам | F12 или CTRL+щелчок | Перейдите к внешнему источнику (декомпилированному с помощью ILSpy), включив эту функцию: Сервис>Параметры>Текстовый редактор>C#>Дополнительно>Разрешить переход к декомпилированным исходным файлам. |
Усовершенствования IntelliSense
С помощью IntelliCode для Visual Studio вы можете использовать контекстно зависимое завершение кода вместо обычного алфавитного списка.
Модульное тестирование
Мы добились многочисленных улучшений в тестировании. Вы можете протестировать платформы тестирования MSTest (MSTest версии 1 или MSTest версии 2), NUnit и XUnit .
Тесты можно быстро обнаружить с помощью обозревателя тестов.
Вы можете упорядочить тесты в обозревателе тестов с помощью новой иерархической сортировки.
- Live Unit Testing постоянно выполняет тесты, на которые влияют изменения в коде, и обновляет значки в редакторе, сообщая о результатах тестирования. Вы можете включать и исключать определенные тесты или тестовые проекты в своем наборе динамических тестов. (Только в Visual Studio Enterprise Edition.)
Дополнительные сведения см. в разделе "Основы модульного теста".
Отладка
Visual Studio включает следующие возможности отладки:
- Возможность поиска строки в окнах Контрольные значения, Видимые и Локальные.
- Функция выполнения до щелчка позволяет навести указатель на строку кода, выбрать появившийся зеленый значок воспроизведения и выполнить программу до этой строки.
- Новый помощник по исправлению ошибок размещает на верхнем уровне диалогового окна наиболее важные сведения, например о том, какая переменная имеет значение
null
вNullReferenceException
. - Обратная отладка позволяет возвращаться к точкам останова или шагам и просматривать предыдущее состояние приложения.
- Отладка моментального снимка позволяет изучить состояние динамического веб-приложения в момент, когда возникло исключение (нужно работать в Azure).
Управление версиями
В Visual Studio 2022 можно использовать Git непосредственно из интегрированной среды разработки для создания, проверки, проверка и выполнения запросов на вытягивание. Дополнительные сведения см. в статье о том, как Visual Studio упрощает управление версиями с помощью Git.
Вы можете использовать Git или TFVC для хранения и обновления кода в Visual Studio.
В Visual Studio 2019 версии 16.8 и более поздних версий можно использовать Git непосредственно в интегрированной среде разработки для создания, проверки, проверка исходящих запросов и выполнения запросов на вытягивание.
В Visual Studio 2019 версии 16.7 и более ранних версиях установите запросы на вытягивание для расширения Visual Studio для создания, проверки, проверка и запуска запросов на вытягивание без выхода из Visual Studio.
Можно упорядочить локальные изменения с помощью Team Explorer, а также использовать строку состояния для отслеживания ожидающих фиксаций и изменений.
Вы можете настроить для проектов ASP.NET непрерывную интеграцию и поставку в Visual Studio с помощью расширения Инструменты непрерывной поставки для Visual Studio.
О каких еще функциях мне нужно знать?
Ниже приведен список функций редактора и производительности, чтобы сделать написание кода более эффективным. Некоторые функции могут быть включены, так как они отключены по умолчанию.
Компонент | Подробности | Включение |
---|---|---|
Поиск файл в обозревателе решений | Выделяет активный файл в обозревателе решений. | Сервис>Параметры>Проекты и решения>Отслеживать активный элемент в обозревателе решений |
Добавление директив using для типов в базовых сборках и пакетах NuGet | Для типа, на который нет ссылок, выводится значок лампочки с ошибкой с предложением установить пакет NuGet | Сервис>Параметры>Текстовый редактор>C#>Дополнительно>Предлагать using для типов в эталонных сборках и Предлагать using для типов в пакетах NuGet |
Включить полный анализ решения | Вы можете просмотреть все ошибки в решении в списке ошибок | Сервис>Параметры>Текстовый редактор>C#>Дополнительно>Включить полный анализ решения |
Включение навигации к декомпилированным источникам | Позволяет использовать функцию "Перейти к определению" для типов и членов из внешних источников и применять декомпилятор ILSpy для отображения тел методов. | Сервис>Параметры>Текстовый редактор>C#>Дополнительно>Разрешить переход к декомпилированным исходным файлам |
Режим завершения/подсказки | Изменяет поведение завершения в IntelliSense. Разработчики с фонами IntelliJ, как правило, используют здесь неотделимый параметр. | Изменение>режима завершения IntelliSense>(или клавиши CTRL+ALT+ПРОБЕЛ В редакторе) |
CodeLens | Отображает справочные сведения о коде и журнал изменений в редакторе. (Индикаторы системы управления версиями средства CodeLens недоступны в Visual Studio Community Edition.) | Сервис>Параметры>Текстовый редактор>Все языки>CodeLens |
Фрагменты кода | Помогают создать заглушку стандартного кода. | Введите имя фрагмента и дважды нажмите клавишу TAB. |
Вставка JSON или XML в качестве классов | Скопируйте любой фрагмент текста JSON или XML в буфер обмена и вставьте его как строго типизированные классы .NET в любой файл кода C#. | Изменение>вставьте специальные>вставки JSON как классы (или вставить XML-классы как классы) |
Копирование и обрезка отступов | Скопируйте код из Visual Studio в другую программу (Outlook, Teams и т. д.), не исправляя отступ вручную после вставки кода. Доступно в Visual Studio 2022 версии 17.7 и более поздних версиях. |