다음을 통해 공유


dotnet new에 대한 .NET 기본 템플릿

.NET SDK를 설치하면 콘솔 앱, 클래스 라이브러리, 단위 테스트 프로젝트, ASP.NET Core 앱(AngularReact 프로젝트 포함), 구성 파일을 비롯한 여러 프로젝트와 파일을 만들 수 있는 12개 이상의 기본 제공 템플릿이 제공됩니다. 기본 제공 템플릿을 나열하려면 dotnet new list 명령을 실행합니다.

dotnet new list

다음 표에는 .NET SDK와 함께 사전 설치된 템플릿이 나와 있습니다. 템플릿의 기본 언어는 대괄호 안에 표시됩니다. 특정 템플릿 옵션을 보려면 약식 이름 링크를 클릭합니다.

템플릿 짧은 이름 언어 태그 도입
콘솔 애플리케이션 console [C#], F#, VB 일반/콘솔 1.0
클래스 라이브러리 classlib [C#], F#, VB 일반/라이브러리 1.0
WPF 애플리케이션 wpf [C#], VB 일반/WPF 3.0(VB의 경우 5.0)
WPF 클래스 라이브러리 wpflib [C#], VB 일반/WPF 3.0(VB의 경우 5.0)
WPF 사용자 지정 컨트롤 라이브러리 wpfcustomcontrollib [C#], VB 일반/WPF 3.0(VB의 경우 5.0)
WPF 사용자 컨트롤 라이브러리 wpfusercontrollib [C#], VB 일반/WPF 3.0(VB의 경우 5.0)
Windows Forms(WinForms) 애플리케이션 winforms [C#], VB 일반/WinForms 3.0(VB의 경우 5.0)
Windows Forms(WinForms) 클래스 라이브러리 winformslib [C#], VB 일반/WinForms 3.0(VB의 경우 5.0)
Worker Service worker [C#] 일반/Worker/웹 3.0
MSTest 테스트 프로젝트 mstest [C#], F#, VB Test/MSTest 1.0
MSTest 테스트 클래스 mstest-class [C#], F#, VB Test/MSTest 1.0
NUnit 3 테스트 프로젝트 nunit [C#], F#, VB Test/NUnit 2.1.400
NUnit 3 테스트 항목 nunit-test [C#], F#, VB Test/NUnit 2.2
xUnit 테스트 프로젝트 xunit [C#], F#, VB Test/xUnit 1.0
Razor 구성 요소 razorcomponent [C#] Web/ASP.NET 3.0
Razor 페이지 page [C#] Web/ASP.NET 2.0
MVC ViewImports viewimports [C#] Web/ASP.NET 2.0
MVC ViewStart viewstart [C#] Web/ASP.NET 2.0
Blazor 웹앱 blazor [C#] Web/Blazor 8.0.100
BlazorWebAssembly 독립 실행형 앱 blazorwasm [C#] 웹/Blazor//WebAssemblyPWA 3.1.300
ASP.NET Core 비어 있음 web [C#], F# Web/Empty 1.0
ASP.NET Core 웹앱(모델-뷰-컨트롤러) mvc [C#], F# Web/MVC 1.0
ASP.NET Core 웹앱 webapp, razor [C#] Web/MVC/Razor Pages 2.2, 2.0
Razor 클래스 라이브러리 razorclasslib [C#] Web/Razor/Library/Razor 클래스 라이브러리 2.1
ASP.NET Core 웹 API webapi [C#], F# 웹/웹 API/API/서비스/WebAPI 1.0
ASP.NET Core API webapiaot [C#] 웹/웹 API/API/서비스 8.0
ASP.NET Core API 컨트롤러 apicontroller [C#] Web/ASP.NET 8.0
ASP.NET Core gRPC 서비스 grpc [C#] Web/gRPC 3.0
dotnet gitignore 파일 gitignore Config 3.0
global.json 파일 globaljson Config 2.0
NuGet 구성 nugetconfig Config 1.0
Dotnet 로컬 도구 매니페스트 파일 tool-manifest Config 3.0
웹 구성 webconfig Config 1.0
솔루션 파일 sln 솔루션 1.0
프로토콜 버퍼 파일 proto Web/gRPC 3.0
EditorConfig file editorconfig Config 6.0

다음 표에서는 .NET SDK를 사용하여 중단되고 더 이상 사전 설치되지 않은 템플릿을 보여 줍니다. 특정 템플릿 옵션을 보려면 약식 이름 링크를 클릭합니다.

템플릿 짧은 이름 언어 태그 이후 중단됨
ASP.NET Core(Angular 사용) angular [C#] Web/MVC/SPA 8.0
ASP.NET Core(React.js 사용) react [C#] Web/MVC/SPA 8.0
Blazor 서버 앱 blazorserver [C#] Web/Blazor 8.0
Blazor 서버 앱이 비어 있음 blazorserver-empty [C#] Web/Blazor 8.0
BlazorWebAssembly 앱이 비어 있음 blazorwasm-empty [C#] Web/Blazor/WebAssembly 8.0

템플릿 옵션

각 템플릿에는 사용할 수 있는 추가 옵션이 있을 수 있습니다. 템플릿에 사용할 수 있는 추가 옵션을 표시하려면 템플릿 이름 인수와 함께 --help 옵션을 사용합니다(예: dotnet new console --help). 템플릿이 여러 언어를 지원하는 경우 이 명령은 기본 언어로 템플릿에 대한 도움말을 표시합니다. --language 옵션과 결합하면 다른 언어에 대한 도움말을 볼 수 있습니다. dotnet new console --help --language F#. .NET SDK와 함께 제공되는 템플릿에는 다음과 같은 추가 옵션이 있습니다.

console

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 3.0 SDK 이후 사용할 수 있습니다.

    다음 표에는 사용 중인 SDK 버전에 따른 기본값이 나열되어 있습니다.

    SDK 버전 기본값
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    3.1 netcoreapp3.1

    이전 TFM에 대한 프로젝트를 만드는 기능은 해당 버전의 SDK가 설치되었는지 여부에 따라 달라집니다. 예를 들어, .NET 7 SDK만 설치된 경우 --framework에 사용할 수 있는 유일한 값은 net7.0입니다. .NET 6 SDK를 설치하면 net6.0 값을 --framework에 사용할 수 있게 됩니다. .NET Core 3.1 SDK를 설치하면 netcoreapp3.1을 사용할 수 있게 됩니다. 따라서 --framework netcoreapp3.1을 지정하면 .NET 6 SDK에서 dotnet new를 실행하는 동안에도 .NET Core 3.1을 대상으로 지정할 수 있습니다.

    또는 사용 중인 SDK보다 이전 버전의 프레임워크를 대상으로 지정하는 프로젝트를 만들려면 해당 템플릿에 대한 NuGet 패키지를 설치하면 됩니다. Common, web, SPA 프로젝트 유형은 TFM(대상 프레임워크 모니커)에 따라 서로 다른 패키지를 사용합니다. 예를 들어, netcoreapp1.0을 대상으로 지정하는 console 프로젝트를 만들려면 Microsoft.DotNet.Common.ProjectTemplates.1.x에서 dotnet new install을 실행합니다.

  • --langVersion <VERSION_NUMBER>

    생성된 프로젝트 파일에서 LangVersion 속성을 설정합니다. 예를 들어 C# 7.3을 사용하려면 --langVersion 7.3을 사용합니다. F#에서 지원되지 않습니다. .NET Core 2.2 SDK부터 사용할 수 있습니다.

    기본 C# 버전 목록은 기본값을 참조하세요.

  • --no-restore

    지정할 경우 프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다. .NET Core 2.2 SDK부터 사용할 수 있습니다.

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false. C#에서만 사용할 수 있습니다.


classlib

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. 값: net8.0. net7.0또는 net6.0 .NET 클래스 라이브러리를 만들거나 netstandard2.1 netstandard2.0 .NET Standard 클래스 라이브러리를 만듭니다. .NET SDK 8.0.x의 기본값은 net8.0입니다.

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --langVersion <VERSION_NUMBER>

    생성된 프로젝트 파일에서 LangVersion 속성을 설정합니다. 예를 들어 C# 7.3을 사용하려면 --langVersion 7.3을 사용합니다. F#에서 지원되지 않습니다. .NET Core 2.2 SDK부터 사용할 수 있습니다.

    기본 C# 버전 목록은 기본값을 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.


wpf, wpflib, wpfcustomcontrollibwpfusercontrollib

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET 8 SDK의 경우 기본값은 net8.0입니다. .NET Core 3.1 SDK부터 사용할 수 있습니다.

  • --langVersion <VERSION_NUMBER>

    생성된 프로젝트 파일에서 LangVersion 속성을 설정합니다. 예를 들어 C# 7.3을 사용하려면 --langVersion 7.3을 사용합니다.

    기본 C# 버전 목록은 기본값을 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.


winforms, winformslib

  • --langVersion <VERSION_NUMBER>

    생성된 프로젝트 파일에서 LangVersion 속성을 설정합니다. 예를 들어 C# 7.3을 사용하려면 --langVersion 7.3을 사용합니다.

    기본 C# 버전 목록은 기본값을 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.


worker, grpc

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET 8 SDK의 기본값은 net8.0입니다. .NET Core 3.1 SDK부터 사용할 수 있습니다.

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


mstest

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 3.0 SDK 이후 사용할 수 있는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 Default value
    9.0 net9.0
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1

이전 TFM에 대한 프로젝트를 만드는 기능은 해당 버전의 SDK가 설치되었는지 여부에 따라 달라집니다. 예를 들어, .NET 6 SDK만 설치된 경우 --framework에 사용할 수 있는 유일한 값은 net6.0입니다. .NET 5 SDK를 설치하면 net5.0 값을 --framework에 사용할 수 있게 됩니다. .NET Core 3.1 SDK를 설치하면 netcoreapp3.1을 사용할 수 있게 됩니다. 따라서 --framework netcoreapp3.1을 지정하면 .NET 6 SDK에서 dotnet new를 실행하는 동안에도 .NET Core 3.1을 대상으로 지정할 수 있습니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --sdk

    MSTest.Sdk 프로젝트 스타일을 사용합니다.

  • --test-runner <TEST_RUNNER>

    테스트 프로젝트의 실행기/플랫폼입니다. 가능한 값은 다음과 같습니다.

    • VSTest - VSTest 플랫폼(기본값).
    • MSTest - MSTest Runner(즉, Microsoft.Testing.Platform).
  • --coverage-tool <COVERAGE_TOOL>

    테스트 프로젝트에 사용할 검사 도구입니다. 가능한 값은 다음과 같습니다.

    • Microsoft.CodeCoverage - Microsoft 코드 검사(기본값).
    • coverlet - 커버렛 검사 도구입니다.
  • --extensions-profile <EXTENSIONS_PROFILE>

    MSTest Runner를 사용하는 경우 SDK 확장 프로필입니다. 가능한 값은 다음과 같습니다.

    • Default - 기본 확장 프로필(기본값).
    • None - 사용하도록 설정된 확장이 없습니다.
    • AllMicrosoft - Microsoft에서 제공한 모든 확장(제한적인 라이선스가 있는 확장 포함)을 사용하도록 설정합니다.
  • --fixture <FIXTURE>

    테스트 프로젝트에 포함할 fixture 종류입니다. 가능한 값은 다음과 같습니다.

    • None - 비품 메서드가 없습니다.
    • AssemblyInitialize - AssemblyInitialize fixture 메서드.
    • AssemblyCleanup - AssemblyCleanup fixture 메서드입니다.
    • ClassInitialize - ClassInitialize fixture 메서드.
    • ClassCleanup - ClassCleanup fixture 메서드입니다.
    • TestInitialize - TestInitialize fixture 메서드.
    • TestCleanup - TestCleanup fixture 메서드.

    여러 값이 허용되는 위치입니다.

  • -p|--enable-pack

    dotnet pack을 사용하여 프로젝트에 대한 패키징을 사용하도록 설정합니다.


mstest-class

  • --fixture <FIXTURE>

    테스트 프로젝트에 포함할 fixture 종류입니다. 가능한 값은 다음과 같습니다.

    • None - 비품 메서드가 없습니다.
    • AssemblyInitialize - AssemblyInitialize fixture 메서드.
    • AssemblyCleanup - AssemblyCleanup fixture 메서드입니다.
    • ClassInitialize - ClassInitialize fixture 메서드.
    • ClassCleanup - ClassCleanup fixture 메서드입니다.
    • TestInitialize - TestInitialize fixture 메서드.
    • TestCleanup - TestCleanup fixture 메서드.

    여러 값이 허용되는 위치입니다.


xunit

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 3.0 SDK 이후 사용할 수 있는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 Default value
    9.0 net9.0
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1

이전 TFM에 대한 프로젝트를 만드는 기능은 해당 버전의 SDK가 설치되었는지 여부에 따라 달라집니다. 예를 들어, .NET 6 SDK만 설치된 경우 --framework에 사용할 수 있는 유일한 값은 net6.0입니다. .NET 5 SDK를 설치하면 net5.0 값을 --framework에 사용할 수 있게 됩니다. .NET Core 3.1 SDK를 설치하면 netcoreapp3.1을 사용할 수 있게 됩니다. 따라서 --framework netcoreapp3.1을 지정하면 .NET 6 SDK에서 dotnet new를 실행하는 동안에도 .NET Core 3.1을 대상으로 지정할 수 있습니다.

  • -p|--enable-pack

    dotnet pack을 사용하여 프로젝트에 대한 패키징을 사용하도록 설정합니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.


nunit

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 Default value
    9.0 net9.0
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1

이전 TFM에 대한 프로젝트를 만드는 기능은 해당 버전의 SDK가 설치되었는지 여부에 따라 달라집니다. 예를 들어, .NET 6 SDK만 설치된 경우 --framework에 사용할 수 있는 유일한 값은 net6.0입니다. .NET 5 SDK를 설치하면 net5.0 값을 --framework에 사용할 수 있게 됩니다. .NET Core 3.1 SDK를 설치하면 netcoreapp3.1을 사용할 수 있게 됩니다. 따라서 --framework netcoreapp3.1을 지정하면 .NET 6 SDK에서 dotnet new를 실행하는 동안에도 .NET Core 3.1을 대상으로 지정할 수 있습니다.

  • -p|--enable-pack

    dotnet pack을 사용하여 프로젝트에 대한 패키징을 사용하도록 설정합니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.


page

  • -na|--namespace <NAMESPACE_NAME>

    생성된 코드에 대한 네임스페이스입니다. 기본값은 MyApp.Namespace입니다.

  • -np|--no-pagemodel

    PageModel 없이 페이지를 만듭니다.


viewimports, proto

  • -na|--namespace <NAMESPACE_NAME>

    생성된 코드에 대한 네임스페이스입니다. 기본값은 MyApp.Namespace입니다.


blazorserver

.NET 8 SDK 이후 중단되었습니다.

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. 가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • Individual - 개별 인증입니다.
    • IndividualB2C - Azure AD B2C를 사용한 개별 인증입니다.
    • SingleOrg - 단일 테넌트에 대한 조직적 인증입니다. Entra 외부 ID 테넌트도 SingleOrg를 사용합니다.
    • MultiOrg - 여러 테넌트에 대한 조직적 인증입니다.
    • Windows - Windows 인증입니다.
  • --aad-b2c-instance <INSTANCE>

    연결할 Azure Active Directory B2C 인스턴스입니다. IndividualB2C 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/tfp/입니다.

  • -ssp|--susi-policy-id <ID>

    이 프로젝트에 대한 로그인 및 등록 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • -rp|--reset-password-policy-id <ID>

    이 프로젝트에 대한 암호 재설정 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • -ep|--edit-profile-policy-id <ID>

    이 프로젝트에 대한 프로필 편집 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • --aad-instance <INSTANCE>

    연결할 Azure Active Directory 인스턴스입니다. SingleOrg 또는 MultiOrg 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/입니다.

  • --client-id <ID>

    이 프로젝트의 클라이언트 ID입니다. IndividualB2C, SingleOrg 또는 MultiOrg 인증과 함께 사용합니다. 기본값은 11111111-1111-1111-11111111111111111입니다.

  • --domain <DOMAIN>

    디렉터리 테넌트의 도메인입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 qualified.domain.name입니다.

  • --tenant-id <ID>

    연결할 디렉터리의 TenantId ID입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 22222222-2222-2222-2222-222222222222입니다.

  • --callback-path <PATH>

    리디렉션 URI의 애플리케이션 기본 경로 내 요청 경로입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 /signin-oidc입니다.

  • -r|--org-read-access

    디렉터리에 대한 이 애플리케이션 읽기 액세스를 허용합니다. SingleOrg 또는 MultiOrg 인증에만 적용됩니다.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • --no-https

    HTTPS를 해제합니다. 이 옵션은 --authIndividual, IndividualB2C, SingleOrg 또는 MultiOrg를 사용하지 않는 경우에만 적용됩니다.

  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. Individual 또는 IndividualB2C 인증에만 적용됩니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --kestrelHttpPort

    launchSettings.json에서 HTTP 엔드포인트에 사용할 포트 번호입니다.

  • --kestrelHttpsPort

    launchSettings.json에서 HTTPS 엔드포인트에 사용할 포트 번호입니다. 이 옵션은 매개 변수 no-https가 사용되는 경우 적용할 수 없습니다(단, --auth에 대해 개인 또는 조직 인증 설정이 선택된 경우 no-https는 무시됨).

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


blazor

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다.

    이 템플릿은 .NET 8 이상에서 사용할 수 있습니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --exclude-launch-settings

    생성된 앱에서 launchSettings.json을 제외합니다.

  • -int|--interactivity <None|Server|Webassembly|Auto >

    대화형 구성 요소에 사용할 대화형 렌더링 모드를 지정합니다. 가능한 값은 다음과 같습니다.

    • None - 상호 작용이 없습니다(정적 서버 쪽 렌더링만 해당).
    • Server -(기본값) 대화형 서버 쪽 렌더링을 사용하여 서버에서 앱을 실행합니다.
    • WebAssembly - WebAssembly를 사용하여 브라우저에서 클라이언트 쪽 렌더링을 사용하여 앱을 실행합니다.
    • Auto - Blazor 번들을 다운로드하고 클라이언트에서 Blazor 런타임을 활성화하는 동안 대화형 서버 쪽 렌더링을 사용한 다음 WebAssembly와 함께 클라이언트 쪽 렌더링을 사용합니다.
  • --empty

    기본 사용 패턴을 보여 주는 샘플 페이지와 스타일을 생략합니다.

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. 가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • Individual - 개별 인증입니다.
  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. Individual 인증에만 적용됩니다.

  • -ai|--all-interactive

    최상위 수준에서 대화형 렌더링 모드를 적용하여 모든 페이지를 대화형으로 만듭니다. false인 경우 페이지는 기본적으로 정적 서버 쪽 렌더링을 사용하며 페이지별 또는 구성 요소별로 대화형으로 표시될 수 있습니다. 이 옵션은 -i|--interactivity 옵션이 None으로 설정되지 않은 경우에만 유효합니다.

  • --no-https

    HTTPS를 해제합니다. 이 옵션은 -au|--auth 옵션에 대해 Individual을 선택하지 않은 경우에만 적용됩니다.

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스 및 Main 메서드가 생성됩니다.


blazorwasm

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 기본값
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • -ho|--hosted

    BlazorWebAssembly 앱의 ASP.NET Core 호스트를 포함합니다.

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. 가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • Individual - 개별 인증입니다.
    • IndividualB2C - Azure AD B2C를 사용한 개별 인증입니다.
    • SingleOrg - 단일 테넌트에 대한 조직적 인증입니다. Entra 외부 ID 테넌트도 SingleOrg를 사용합니다.
  • --authority <AUTHORITY>

    OIDC 공급자의 권한입니다. Individual 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/입니다.

  • --aad-b2c-instance <INSTANCE>

    연결할 Azure Active Directory B2C 인스턴스입니다. IndividualB2C 인증과 함께 사용합니다. 기본값은 https://aadB2CInstance.b2clogin.com/입니다.

  • -ssp|--susi-policy-id <ID>

    이 프로젝트에 대한 로그인 및 등록 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • --aad-instance <INSTANCE>

    연결할 Azure Active Directory 인스턴스입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/입니다.

  • --client-id <ID>

    이 프로젝트의 클라이언트 ID입니다. IndividualB2C, SingleOrg 또는 독립 실행형 시나리오의 경우 Individual 인증과 함께 사용합니다. 기본값은 33333333-3333-3333-33333333333333333입니다.

  • --domain <DOMAIN>

    디렉터리 테넌트의 도메인입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 qualified.domain.name입니다.

  • --app-id-uri <URI>

    호출하려는 서버 API의 앱 ID URI입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 api.id.uri입니다.

  • --api-client-id <ID>

    서버가 호스트하는 API의 클라이언트 ID입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 11111111-1111-1111-11111111111111111입니다.

  • -s|--default-scope <SCOPE>

    클라이언트가 액세스 토큰 프로비전을 요청하는 데 필요한 API 범위입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 user_impersonation입니다.

  • --tenant-id <ID>

    연결할 디렉터리의 TenantId ID입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 22222222-2222-2222-2222-222222222222입니다.

  • -r|--org-read-access

    디렉터리에 대한 이 애플리케이션 읽기 액세스를 허용합니다. SingleOrg 인증에만 적용됩니다.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • -p|--pwa

    프로그레시브 웹 애플리케이션(PWA)을 생성하여 설치 및 오프라인 사용을 지원합니다.

  • --no-https

    HTTPS를 해제합니다. 이 옵션은 --authIndividual, IndividualB2C 또는 SingleOrg를 사용하지 않는 경우에만 적용됩니다.

  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. Individual 또는 IndividualB2C 인증에만 적용됩니다.

  • --called-api-url <URL>

    웹앱에서 호출할 API의 URL입니다. ASP.NET Core 호스트가 지정되지 않은 SingleOrg 또는 IndividualB2C 인증에만 적용됩니다. 기본값은 https://graph.microsoft.com/v1.0/me입니다.

  • --calls-graph

    웹앱이 Microsoft Graph를 호출하는지 여부를 지정합니다. SingleOrg 인증에만 적용됩니다.

  • --called-api-scopes <SCOPES>

    웹앱에서 API를 호출하기 위해 요청할 범위입니다. ASP.NET Core 호스트가 지정되지 않은 SingleOrg 또는 IndividualB2C 인증에만 적용됩니다. 기본값은 user.read입니다.

  • --kestrelHttpPort

    launchSettings.json에서 HTTP 엔드포인트에 사용할 포트 번호입니다.

  • --kestrelHttpsPort

    launchSettings.json에서 HTTPS 엔드포인트에 사용할 포트 번호입니다. 이 옵션은 매개 변수 no-https가 사용되는 경우 적용할 수 없습니다(단, --auth에 대해 개인 또는 조직 인증 설정이 선택된 경우 no-https는 무시됨).

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


web

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 2.2 SDK에서 사용할 수 없는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 기본값
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1
    3.0 netcoreapp3.0
    2.1 netcoreapp2.1

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --no-https

    HTTPS를 해제합니다.

  • --kestrelHttpPort

    launchSettings.json에서 HTTP 엔드포인트에 사용할 포트 번호입니다.

  • --kestrelHttpsPort

    launchSettings.json에서 HTTPS 엔드포인트에 사용할 포트 번호입니다. 이 옵션은 매개 변수 no-https가 사용되는 경우 적용할 수 없습니다(단, --auth에 대해 개인 또는 조직 인증 설정이 선택된 경우 no-https는 무시됨).

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


mvc, webapp

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. 가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • Individual - 개별 인증입니다.
    • IndividualB2C - Azure AD B2C를 사용한 개별 인증입니다.
    • SingleOrg - 단일 테넌트에 대한 조직적 인증입니다. Entra 외부 ID 테넌트도 SingleOrg를 사용합니다.
    • MultiOrg - 여러 테넌트에 대한 조직적 인증입니다.
    • Windows - Windows 인증입니다.
  • --aad-b2c-instance <INSTANCE>

    연결할 Azure Active Directory B2C 인스턴스입니다. IndividualB2C 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/tfp/입니다.

  • -ssp|--susi-policy-id <ID>

    이 프로젝트에 대한 로그인 및 등록 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • -rp|--reset-password-policy-id <ID>

    이 프로젝트에 대한 암호 재설정 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • -ep|--edit-profile-policy-id <ID>

    이 프로젝트에 대한 프로필 편집 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • --aad-instance <INSTANCE>

    연결할 Azure Active Directory 인스턴스입니다. SingleOrg 또는 MultiOrg 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/입니다.

  • --client-id <ID>

    이 프로젝트의 클라이언트 ID입니다. IndividualB2C, SingleOrg 또는 MultiOrg 인증과 함께 사용합니다. 기본값은 11111111-1111-1111-11111111111111111입니다.

  • --domain <DOMAIN>

    디렉터리 테넌트의 도메인입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 qualified.domain.name입니다.

  • --tenant-id <ID>

    연결할 디렉터리의 TenantId ID입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 22222222-2222-2222-2222-222222222222입니다.

  • --callback-path <PATH>

    리디렉션 URI의 애플리케이션 기본 경로 내 요청 경로입니다. SingleOrg 또는 IndividualB2C 인증과 함께 사용합니다. 기본값은 /signin-oidc입니다.

  • -r|--org-read-access

    디렉터리에 대한 이 애플리케이션 읽기 액세스를 허용합니다. SingleOrg 또는 MultiOrg 인증에만 적용됩니다.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • --no-https

    HTTPS를 해제합니다. 이 옵션은 Individual, IndividualB2C, SingleOrg 또는 MultiOrg를 사용하지 않는 경우에만 적용됩니다.

  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. Individual 또는 IndividualB2C 인증에만 적용됩니다.

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 3.0 SDK 이후 사용할 수 있는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 기본값
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1
    3.0 netcoreapp3.0

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --use-browserlink

    프로젝트에 BrowserLink를 포함합니다. .NET Core 2.2 및 3.1 SDK에서 사용할 수 없는 옵션입니다.

  • -rrc|--razor-runtime-compilation

    프로젝트가 디버그 빌드에서 Razor 런타임 컴파일을 사용하도록 구성되어 있는지 확인합니다. .NET Core 3.1.201 SDK 이후 사용할 수 있는 옵션입니다.

  • --kestrelHttpPort

    launchSettings.json에서 HTTP 엔드포인트에 사용할 포트 번호입니다.

  • --kestrelHttpsPort

    launchSettings.json에서 HTTPS 엔드포인트에 사용할 포트 번호입니다. 이 옵션은 매개 변수 no-https가 사용되는 경우 적용할 수 없습니다(단, --auth에 대해 개인 또는 조직 인증 설정이 선택된 경우 no-https는 무시됨).

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


angular, react

.NET 8 SDK 이후 중단되었습니다.

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. .NET Core 3.0 SDK 이후 사용할 수 있습니다.

    가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • Individual - 개별 인증입니다.
  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --no-https

    HTTPS를 해제합니다. 이 옵션은 인증이 None인 경우에만 적용됩니다.

  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. Individual 또는 IndividualB2C 인증에만 적용됩니다. .NET Core 3.0 SDK 이후 사용할 수 있습니다.

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 2.2 SDK에서 사용할 수 없는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    참고 항목

    net8.0에 대한 React 템플릿은 없지만, ASP.NET Core로 React 앱을 개발하는 데 관심이 있다면 ASP.NET Core의 SPA(단일 페이지 앱) 개요를 참조하세요.

    SDK 버전 기본값
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1
    3.0 netcoreapp3.0
    2.1 netcoreapp2.0

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --kestrelHttpPort

    launchSettings.json에서 HTTP 엔드포인트에 사용할 포트 번호입니다.

  • --kestrelHttpsPort

    launchSettings.json에서 HTTPS 엔드포인트에 사용할 포트 번호입니다. 이 옵션은 매개 변수 no-https가 사용되는 경우 적용할 수 없습니다(단, --auth에 대해 개인 또는 조직 인증 설정이 선택된 경우 no-https는 무시됨).

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


razorclasslib

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • -s|--support-pages-and-views

    이 라이브러리에 구성 요소 외에 기존의 Razor 페이지와 뷰를 추가하는 것을 지원합니다. .NET Core 3.0 SDK 이후 사용할 수 있습니다.


webapiaot

AOT 게시가 사용하도록 설정된 웹 API 프로젝트를 만듭니다. 자세한 내용은 네이티브 AOT 배포웹 API(네이티브 AOT) 템플릿을 참조하세요.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 기본값
    8.0 net8.0
  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


webapi

  • -au|--auth <AUTHENTICATION_TYPE>

    사용할 인증 형식입니다. 가능한 값은 다음과 같습니다.

    • None - 인증하지 않습니다(기본값).
    • IndividualB2C - Azure AD B2C를 사용한 개별 인증입니다.
    • SingleOrg - 단일 테넌트에 대한 조직적 인증입니다. Entra 외부 ID 테넌트도 SingleOrg를 사용합니다.
    • Windows - Windows 인증입니다.
  • --aad-b2c-instance <INSTANCE>

    연결할 Azure Active Directory B2C 인스턴스입니다. IndividualB2C 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/tfp/입니다.

  • -minimal|--use-minimal-apis

    ASP.NET Core 최소 API를 사용하는 프로젝트를 만듭니다. 기본값은 false이지만 이 옵션은 -controllers로 재정의됩니다. -controllers의 기본값은 false이므로 두 옵션 중 하나를 지정하지 않고 dotnet new webapi를 입력하면 최소 API 프로젝트가 만들어집니다.

  • -ssp|--susi-policy-id <ID>

    이 프로젝트에 대한 로그인 및 등록 정책 ID입니다. IndividualB2C 인증과 함께 사용합니다.

  • --aad-instance <INSTANCE>

    연결할 Azure Active Directory 인스턴스입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 https://login.microsoftonline.com/입니다.

  • --client-id <ID>

    이 프로젝트의 클라이언트 ID입니다. IndividualB2C 또는 SingleOrg 인증과 함께 사용합니다. 기본값은 11111111-1111-1111-11111111111111111입니다.

  • -controllers|--use-controllers

    최소한의 API 대신 컨트롤러를 사용할지 여부를 나타냅니다. 이 옵션과 -minimal이 모두 지정된 경우 이 옵션은 -minimal에서 지정한 값을 재정의합니다. 기본값은 false입니다. .NET 8 SDK부터 사용할 수 있습니다.

  • --domain <DOMAIN>

    디렉터리 테넌트의 도메인입니다. IndividualB2C 또는 SingleOrg 인증과 함께 사용합니다. 기본값은 qualified.domain.name입니다.

  • --tenant-id <ID>

    연결할 디렉터리의 TenantId ID입니다. SingleOrg 인증과 함께 사용합니다. 기본값은 22222222-2222-2222-2222-222222222222입니다.

  • -r|--org-read-access

    디렉터리에 대한 이 애플리케이션 읽기 액세스를 허용합니다. SingleOrg 인증에만 적용됩니다.

  • --exclude-launch-settings

    생성된 템플릿에서 launchSettings.json을 제외합니다.

  • --no-openapi

    OpenAPI(Swagger) 지원을 끕니다. AddSwaggerGen, UseSwaggerUseSwaggerUI는 호출되지 않습니다.

  • --no-https

    HTTPS를 해제합니다. launchSettings.json에서는 https 시작 프로필이 만들어지지 않습니다. app.UseHstsapp.UseHttpsRedirectionProgram.cs/Startup.cs에서 호출되지 않습니다. 이 옵션은 인증에 IndividualB2C 또는 SingleOrg를 사용하지 않는 경우에만 적용됩니다.

  • -uld|--use-local-db

    SQLite 대신 LocalDB를 사용하도록 지정합니다. IndividualB2C 인증에만 적용됩니다.

  • -f|--framework <FRAMEWORK>

    대상으로 할 프레임워크를 지정합니다. .NET Core 2.2 SDK에서 사용할 수 없는 옵션입니다.

    다음 표에서는 사용하는 SDK 버전 번호에 따른 기본값을 나열합니다.

    SDK 버전 기본값
    8.0 net8.0
    7.0 net7.0
    6.0 net6.0
    5.0 net5.0
    3.1 netcoreapp3.1
    3.0 netcoreapp3.0
    2.1 netcoreapp2.1

    사용 중인 SDK보다 이전 프레임워크를 대상으로 하는 프로젝트를 만들려면 이 문서의 앞부분에 나온 console 프로젝트에 대한 --framework를 참조하세요.

  • --no-restore

    프로젝트를 만드는 동안 암시적 복원을 실행하지 않습니다.

  • --use-program-main

    지정된 경우 최상위 문 대신 명시적인 Program 클래스와 Main 메서드가 사용됩니다. .NET SDK 6.0.300부터 사용 가능합니다. 기본값: false.


apicontroller

읽기/쓰기 작업이 있거나 없는 API 컨트롤러입니다.

  • -p:n|--name <NAME>

    생성된 코드의 네임스페이스입니다. 기본값은 MyApp.Namespace입니다.

  • -ac|--actions

    읽기/쓰기 작업을 사용하여 컨트롤러를 만듭니다. 기본값은 false입니다.


globaljson

  • --sdk-version <VERSION_NUMBER>

    global.json 파일에서 사용할 .NET SDK 버전을 지정합니다.

  • --roll-forward <ROLL_FORWARD_POLICY>

    SDK 버전을 선택할 때, 특정 SDK 버전이 누락된 경우 대체하거나 이후 버전을 사용하기 위한 지시문으로 사용할 롤포워드 정책입니다. 자세한 내용은 global-json을 참조 하세요.

editorconfig

코드 스타일 기본 설정을 구성하기 위한 .editorconfig 파일을 만듭니다.

  • --empty

    .NET의 기본값 대신 빈 .editorconfig를 만듭니다.

참고 항목