C# 디버그 구성에 대한 프로젝트 설정(.NET Core, .NET 5 이상 및 ASP.NET Core)
프로젝트 속성 페이지의 디버그 탭 및 빌드 탭 C# 프로젝트 디버그 설정을 변경할 수 있습니다.
속성 페이지를 열려면 솔루션 탐색기 프로젝트를 선택한 다음 속성 아이콘을 선택하거나 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성선택합니다.
자세한 내용은 디버그 및 릴리스 구성참조하세요.
중요
이러한 설정은 .NET Framework 또는 UWP 앱에 적용되지 않습니다. .NET Framework에 대한 디버그 설정을 구성하려면C# 디버그 구성에 대한
Visual Studio 2022부터 디버그 탭에서 디버그 시작 프로필 UI 열기를 선택하여 시작 프로필 UI를 열고 디버그 설정을 변경합니다.
설정 | 묘사 |
---|---|
명령줄 인수 | 디버그 중인 앱에 대한 명령줄 인수를 지정합니다. 명령 이름은 외부 프로그램 시작()에서 지정된 앱 이름()입니다. |
작업 디렉터리 | 디버그 중인 앱의 작업 디렉터리를 지정합니다. C#에서 작업 디렉터리가 기본적으로 \bin\debug |
원격 컴퓨터 사용 | 원격 디버깅의 경우 이 옵션을 선택하고 원격 디버깅 대상의 이름 또는 Msvsmon 서버 이름입력합니다. 원격 컴퓨터에서 앱의 위치는 빌드 탭의 출력 경로 속성에 의해 지정됩니다. 위치는 원격 컴퓨터에서 공유 가능한 디렉터리여야 합니다. |
환경 변수 | 애플리케이션 프로세스를 실행하기 전에 환경 변수를 설정합니다. ASP.NET Core는 환경참조하세요. |
관리되지 않는 코드 디버깅 활성화 | 관리되는 앱에서 네이티브(관리되지 않는) Win32 코드에 대한 호출을 디버그합니다. |
SQL Server 디버깅 사용 | SQL Server 데이터베이스 개체를 디버그합니다. |
WebView2 디버깅 활성화 | Microsoft Edge(Chromium) 기반 디버거를 사용하여 JavaScript를 디버그합니다. |
.NET 5 이상에 대한 속성 외에도 ASP.NET Core 시작 프로필에는 다른 ASP.NET Core 프로필에 대한 몇 가지 추가 속성이 포함됩니다. 이러한 설정은 프로젝트의 launchSettings.json
파일에 대한 간단한 UI를 제공합니다. 이 파일에 대한 자세한 내용은 ASP.NET Core여러 환경 사용
시작 프로필 UI에 제공된 설정에는 다음이 포함됩니다.
설정 | 묘사 |
---|---|
브라우저 실행 | URL 설정에서 설정한 URL을 사용하여 디버깅을 시작할 때 기본 브라우저를 시작할지 여부를 선택합니다. |
URL | .NET 또는 .NET Core에 대한 호스트 URL의 위치를 지정합니다. 프로젝트의 이름을 딴 프로필의 경우(즉, launchSettings.json commandName 속성이 Project), Kestrel 서버는 지정된 포트를 수신합니다. IIS 프로필의 경우, 보통 의 앱 URL과 동일한 값입니다. 자세한 내용은 프로젝트 구성의 IIS 시작 프로필 섹션을 참조하세요. |
앱 URL |
애플리케이션 URL을 지정합니다. 프로젝트 이름을 따서 명명된 프로필의 경우 이 속성은 Kestrel 서버 URL(일반적으로 https://localhost:5001 및 http://localhost:5000 )을 지정합니다. |
Visual Studio는 기본적으로 IIS Express 프로필을 제공하며 IIS 프로필과 같은 추가 프로필을 만들 수 있습니다. 이러한 설정은 launchSettings.json설정에도 해당합니다. 이러한 두 프로필 형식은 호스팅 모델과 같은 여러 설정을 제공합니다.
설정 | 묘사 |
---|---|
호스팅 모델 | In Process(기본값) 또는 Out of Process를 지정합니다. 자세한 내용은 ASP.NET Core 문서에서 |
앱 SSL URL | IIS Express의 경우 앱 SSL URL은 일반적으로 http://localhost:44334. 입니다. |
다음 표에서는 디버깅에 유용한 빌드 설정을 보여줍니다. 빌드 설정에 대한 자세한 내용은 빌드 페이지, 프로젝트 디자이너참조하세요.
설정 | 묘사 |
---|---|
일반>조건부 컴파일 기호 | 선택된 경우 DEBUG 및 TRACE 상수를 정의하십시오. 이러한 상수는 디버그 클래스 및 Trace 클래스조건부 컴파일을 사용하도록 설정합니다. 이러한 상수가 정의되면 디버그 및 추적 클래스 메서드는 출력 창출력을 생성합니다. 이러한 상수가 없으면 디버그 및 추적 클래스 메서드가 컴파일되지 않으며 출력이 생성되지 않습니다. 일반적으로 DEBUG는 빌드의 디버그 버전에서 정의되고 릴리스 버전에서 정의되지 않습니다. TRACE는 디버그 버전과 릴리스 버전 모두에서 정의됩니다. |
일반>코드를 최적화 | 버그가 최적화된 코드에만 표시되지 않는 한 디버그 빌드에 대해 이 설정을 선택 취소된 상태로 둡니다. 명령이 소스 코드의 문에 직접 해당하지 않으므로 최적화된 코드는 디버그하기 어렵습니다. |
디버그 기호 | 컴파일러에서 생성된 디버깅 정보의 형식을 지정합니다.
디버그 기호를 참조하세요. 애플리케이션의 디버그 성능을 구성하는 방법에 대한 자세한 내용은디버그하기 쉬운 이미지 만들기 |
출력>기본 출력 경로 | 중간 출력에 대한 기본 폴더를 지정합니다. 출력은 일반적으로 디버그 빌드의 경우 bin\Debug에 저장됩니다. |
출력>기본 중간 출력 경로 | 중간 출력에 대한 기본 폴더를 지정합니다. 일반적으로 디버그 빌드의 출력은 obj\Debug으로 이동합니다. |
디버그 기호에 대해 다음 옵션을 선택할 수 있습니다.
기호가 내보내지 않습니다
디버깅 정보가 생성되지 않음을 지정합니다.
현재 플랫폼의 PDB 파일
를 생성합니다. PDB 파일은 다른 도구, 특히 디버거를 제공하는 플랫폼별 기호 파일로, 주 실행 파일의 내용과 생성 방법에 대한 정보를 제공합니다.
PDB 파일, 이식 가능한
.PDB 파일을 생성하며, 이 파일은 비 플랫폼별 이식 가능한 기호 파일로서, 다른 도구, 특히 디버거가 기본 실행 파일의 내용과 무엇을 통해 생성되었는지를 파악할 수 있도록 정보를 제공합니다. 자세한 내용은 이식 가능한 PDB 참조하세요.
DLL/EXE에 포함됨, 플랫폼 간 이식 가능
어셈블리에 이식 가능한 기호 정보를 포함합니다. 외부 .PDB 파일이 생성되지 않습니다.
자세한 내용은 /debug(C# 컴파일러 옵션)참조하세요.
- 디버거 설정 및 준비