Краткое руководство: отладка ASP.NET Core с помощью отладчика Visual Studio

Отладчик Visual Studio реализует множество эффективных функций для отладки приложений. В этой статье представлен краткий способ изучения некоторых основных функций.

Создание нового проекта

  1. Откройте Visual Studio.

    Если окно запуска не открыто, выберите Файл>Окно запуска.

  2. На начальном экране выберите Создать проект.

  3. В окне создания проекта введите или введите веб-приложение в поле поиска. Затем выберите C# в списке языков. Выберите шаблон ASP.NET Core Web App (Razor Pages) и выполните действия по созданию проекта.

    Если вы не видите шаблон проекта ASP.NET Core Web App (Razor Pages), перейдите к разделу "Сервис>получения инструментов и функций",который открывает установщик Visual Studio. Выберите рабочую нагрузку ASP.NET и разработка веб-приложений, а затем щелкните Изменить.

    Visual Studio создаст проект.

  4. В Обозреватель решений откройте privacy.cshtml (в разделе Pages) и замените следующий код:

    @{
     ViewData["Title"] = "Privacy Policy";
    }
    

    таким кодом:

    @{
     ViewData["Title"] = "Privacy Policy";
     <label>@PrivacyModel.PrivacyMessage</label>
    }
    
  5. В Обозреватель решений откройте файл Privacy.cshtml.cs (в разделе Pages/Privacy.cshtml) и замените следующий код.

    public void OnGet()
    {
    }
    

    таким кодом:

    
    public static string? PrivacyMessage { get; set; }
    
    public void OnGet()
    {
       LinkedList<int> result = DoWork();
       PrivacyMessage = "Result of work: " + result.First.Value + ", " + result.First.Value;
    }
    
    private static LinkedList<int> DoWork()
    {
       LinkedList<int> c1 = new();
    
       c1.AddLast(10);
       c1.AddLast(20);
    
       LinkedList<int> c2 = new(c1);
    
       return c2;
    
    }
    

Установка точки останова

Точка останова указывает, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти, либо выполнение ветви кода. Это самая базовая функция отладки.

  1. Чтобы задать точку останова, щелкните в области слева от функции DoWork (или выберите строку кода и нажмите клавишу F9).

    Set a breakpoint

    Точка останова задается слева от открывающей фигурной скобки ({).

  2. Нажмите клавишу F5 (или выберите Отладка > Начать отладку).

  3. Когда веб-страница загружается, выберите ссылку конфиденциальности в верхней части веб-страницы.

    Отладчик приостановит выполнение в заданной точке останова. Желтая стрелка определяет инструкцию, в которой отладчик и выполнение приложения приостановлены. Строка с открывающей скобкой ({) после DoWork объявления функции еще не выполнена.

    Hit a breakpoint

    Совет

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

Чтобы продолжить работу отладчика, можно использовать различные команды. Здесь описываются полезные новые команды для навигации по коду, доступные с версии Visual Studio 2017.

Пока код приостановлен в точке останова, наведите указатель мыши на инструкциюreturn c2, пока не появится зеленая кнопкаRun to Click"Запустить", а затем нажмите кнопку "Выполнить", чтобы нажать кнопку.

Run to click

Выполнение приложения продолжится и будет приостановлено в той строке, в которой вы нажмете эту кнопку.

В процессе пошагового выполнения кода обычно используются клавиши F10 и F11. Более подробные инструкции см. в статье Знакомство с отладчиком Visual Studio.

Проверка переменных в подсказке по данным

  1. В текущей строке кода, отмеченной желтым указателем выполнения, наведите указатель мыши на объект c2, чтобы просмотреть подсказку по данным.

    View a datatip

    Подсказка по данным содержит текущее значение переменной c2 и позволяет проверить ее свойства. Если во время отладки отображается значение, которое вы не ожидали увидеть, возможно, в предыдущей или вызывающей строке кода имеется ошибка.

  2. Разверните подсказку по данным, чтобы просмотреть текущие значения свойств объекта c2.

  3. Если вы хотите закрепить подсказку данных, чтобы вы могли продолжать видеть значение c2 при выполнении кода, выберите маленький значок закрепления. (При необходимости вы можете переместить закрепленную подсказку по данным в удобное положение.)

Следующие шаги

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