빠른 시작: Visual Studio 디버거를 사용하여 ASP.NET Core 디버그

Visual Studio 디버거는 앱을 디버그하도록 돕는 여러 가지 강력한 기능을 제공합니다. 이 문서에서는 기본 기능 중 일부에 대해 알아보는 빠른 방법을 제공합니다.

새 프로젝트 만들기

  1. Visual Studio를 엽니다.

    시작 창이 열려 있지 않으면 파일>시작 창을 선택합니다.

  2. 시작 창에서 새 프로젝트 만들기를 선택합니다.

  3. 새 프로젝트 만들기 창에서 검색 상자에 웹앱을 입력합니다. 다음으로 언어 목록에서 C#을 선택합니다. ASP.NET Core 웹앱(Razor Pages) 템플릿을 선택하고 단계에 따라 프로젝트를 만듭니다.

    ASP.NET Core 웹앱(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부터 사용할 수 있는 유용한 코드 탐색 명령을 보여줍니다.

중단점에서 코드가 일시 중지하는 동안 녹색의 실행하려면 클릭 단추 Run to Click가 나타날 때까지 return c2 명령문을 마우스로 가리킨 다음, 실행하려면 클릭 단추를 누릅니다.

Run to click

앱은 실행을 계속하고, 단추를 클릭한 코드 줄에서 일시 중지합니다.

코드를 단계별로 실행하는 데 사용되는 일반적인 키보드 명령은 F10F11을 포함합니다. 자세한 지침은 디버거 소개를 참조하세요.

datatip에서 변수 검사

  1. 현재 코드 줄에서(노란색 실행 포인터에 의해 표시됨) 마우스로 c2 개체를 마우스로 가리켜 datatip을 표시합니다.

    View a datatip

    datatip은 c2 변수의 현재 값을 보여주고 이를 통해 해당 속성을 검사할 수 있습니다. 디버깅할 때 예상하지 않은 값이 표시되는 경우 이전 또는 호출하는 코드 줄에 버그가 있을 가능성이 큽니다.

  2. datatip을 확장하여 c2 개체의 현재 속성 값을 확인합니다.

  3. 코드를 실행하는 동안 c2의 값을 계속해서 볼 수 있도록 datatip을 고정하려면 작은 고정 아이콘을 선택합니다. (고정된 datatip을 편리한 위치로 이동할 수 있습니다.)

다음 단계

이 자습서에서는 디버거를 시작하고, 코드를 단계별로 실행하며, 변수를 검사하는 방법을 알아보았습니다. 더 많은 정보에 대한 링크와 함께 디버거 기능에 대해 개략적으로 살펴보는 것이 좋습니다.