Инструменты для работы с ASP.NET, ASP.NET MVC и ASP.NET Core

ReSharper помогает эффективно работать c проектами ASP.NET и ASP.NET MVC, в том числе с файлами разметки, предоставляя помощь при написании кода и широкий набор функций для анализа кода, кодогенерации и навигации. Некоторые функции работают в веб-приложениях точно так же, как в проектах на C# или VB.NET, другие же специально оптимизированы для конкретных задач веб-разработки.

Инспекции и быстрые исправления для ASP.NET в ReSharper

Инспекции кода и быстрые исправления

При работе с кодом C#, используемым в разметке ASP.NET и в файлах с выделенным кодом, доступна вся функциональность ReSharper, включая все разнообразие инспекций и быстрых исправлений. Кроме того, ReSharper предоставляет инспекции и исправления, предназначенные специально для ASP.NET: например, обнаружение неиспользуемых пространств имен, неизвестных символов и сущностей на aspx-страницах.

Чтобы было проще перемещаться к обнаруженным проблемам в файлах разметки ASP.NET, в правой части редактора предусмотрены панель маркеров и индикатор состояния.

Преобразование ASP.NET-кода с помощью контекстных действий ReSharper

Контекстные действия

В ReSharper предусмотрены контекстные действия, которые помогают в распространенных ситуциях разработки с ASP.NET.

Например, контекстные действия для ASP.NET позволяют заменять, сворачивать или удалять теги; конвертировать HTML-сущности; создавать события, функции и свойства; вставлять столбцы и строки в таблицы; добавлять файлы с выделенным кодом.

Просмостр структуры .aspx-файла

Навигация и поиск

Многие функции навигации ReSharper доступны для работы с ASP.NET.

Например, если вы хотите просмотреть обзор элементов разметки в текущем aspx-файле, нажмите Ctrl+Alt+F, чтобы открыть окно File Structure. Можно воспользоваться и другими возможностями навигации, например Go to File Member, Go to Next/Previous Member или Go to Containing Declaration.

Другие команды навигации, которые могут пригодиться в проектах ASP.NET, включают переход к объявлению, что особенно полезно для перехода к пользовательским элементам управления и мастер-страницам из ссылок, и переход к использованиям символа для навигации от тегов ContentPlaceHolder к соответствующим тегам Content или от ссылки на мастер-страницу к любым веб-формам, в которых она использована.

Навигация из файла разметки к файлам, на которые он ссылается

Переход к связанным файлам

Go to Related Files (Ctrl+Alt+F7) — специальная команда для перехода из файла разметки к любым файлам, на которые он ссылается, в том числе к файлам с выделенным кодом, мастер-страницам, пользовательским элементам управления, изображениям, JavaScript и CSS-файлам, представлениям и контроллерам ASP.NET MVC.

Подсветка синтаксиса в представлении ASP.NET

Подсветка синтаксиса

При внедрении блоков отображения на aspx-страницы с использованием C# или VB.NET, с помощью подсветки синтаксиса вы сможете:

  • Увидеть имена действий и контроллеров в вызовах ASP.NET MVC (подробнее об этой и других функциях ReSharper для ASP.NET MVC).
  • Воспользоваться всеми преимуществами обычной подсветки синтаксиса для кода на C# и VB.NET.
Шаблоны кода для ASP.NET

Шаблоны кода

ReSharper позволяет быстро создавать веб-формы, теги и атрибуты с помощью 20 специальных шаблонов:

  • Live templates для ASP.NET (Ctrl+E,L) ускоряют создание новых элементов управления, блоков скриптов, тегов и атрибутов.
  • Surround templates (Ctrl+E, U) помогают обернуть текст или код в теги, ссылки и блоки foreach.
  • File templates (Ctrl+Alt+Ins) упрощают создание новых веб-форм, пользовательских элементов управления и мастер-страниц.
Генерация методов подписки на событие в ASP.NET

Генерация кода

ReSharper умеет генерировать теги Content на страницах разметки на основе тегов ContentPlaceHolder, определенных на соответствующей мастер-странице.

Еще одна возможность генерации — создании методов подписки на события в файлах с выделенным кодом.

Чтобы вызвать эти действия, а также обычные функции генерации кода для C# и VB.NET, доступные в текущем контексте, нажмите Alt+Ins в режиме редактирования.

Автодополнение для ASP.NET в ReSharper

Автодополнение

Автодополнение кода (в том числе Smart completion) работает для имен тегов и значений атрибутов. Автодополнение для неимпортированных символов помогает ссылаться на неимпортированные пользовательские элементы управления, не регистрируя их заранее: ReSharper автоматически сгенерирует директиву Register. Кроме того, ReSharper предоставляет автодополнение для символов JavaScript.

ReSharper автоматически регистрирует пользовательские элементы управления в проектах ASP.NET

Автоматический импорт и регистрация

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

Реорганизация кода в ASP.NET

Другие возможности редактора

ReSharper автоматически подставит закрывающий тег, как только вы введете открывающий, а после ввода открывающих кавычек для значения атрибута добавит закрывающие. Парные разделители подсвечиваются при установке курсора на любой из них.

Если в коде присутствует глубокая вложенность тегов, используйте команду Extend/Shrink Selection, чтобы расширить/сузить область выделения. Выделив нужный блок, вы можете переместить его вверх/вниз (для тегов) или влево/вправо (для атрибутов).

Помощь при интернационализации ASP.NET-приложений

Интернационализация

Если на aspx-страницах есть HTML-разметка, которую нужно локализовать, выделите строку и нажмите Alt+Enter, чтобы переместить ее в файл ресурсов. И это лишь малая часть возможностей ReSharper для интернационализации.

Функциональность ReSharper для представлений ASP.NET MVC

Поддержка ASP.NET MVC

В ReSharper предусмотрен набор специальных функций для проектов ASP.NET MVC.

В дополнение к функциональности, описанной выше, и общей поддержке C#/VB.NET, которая поможет вам писать код контроллеров, вы сможете перемещаться между действиями и контроллерами, пользоваться специальной подсветкой синтаксиса и автодополнением, которое учитывает ссылки на действия в строковых литералах, создавать действия и контроллеры из их использований и работать продуктивнее с представлениями aspx и Razor.

Функциональность ReSharper для ASP.NET Core

Поддержка ASP.NET Core

ReSharper понимает ссылки на проекты и синтаксис тег-хелперов в проектах ASP.NET Core и предоставляет весь основной набор функций, включая рефакторинги, инспекции кода, навигацию и автодополнение. Помощь при юнит-тестировании также доступна для модульных тестов .NET Core в Visual Studio 2015, 2017 и 2019.

Обратите внимание:

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