Sdílet prostřednictvím


dotnet new <TEMPLATE>

Tento článek se vztahuje na: ✔️ .NET Core 3.1 SDK a novější verze

Název

dotnet new – Vytvoří nový projekt, konfigurační soubor nebo řešení na základě zadané šablony.

Synopse

dotnet new <TEMPLATE> [--dry-run] [--force] [-lang|--language {"C#"|"F#"|VB}]
    [-n|--name <OUTPUT_NAME>] [-f|--framework <FRAMEWORK>] [--no-update-check]
    [-o|--output <OUTPUT_DIRECTORY>] [--project <PROJECT_PATH>]
    [-d|--diagnostics] [--verbosity <LEVEL>] [Template options]

dotnet new -h|--help

Popis

Příkaz dotnet new vytvoří projekt .NET nebo jiné artefakty založené na šabloně.

Příkaz zavolá modul šablony, který vytvoří artefakty na disku na základě zadané šablony a možností.

Poznámka:

Od sady .NET 7 SDK se dotnet new syntaxe změnila:

  • Z --list, , --install--searcha --uninstall možnosti se staly list, searchinstall, a uninstall podpříkazy.
  • Možnost --update-apply se stala update podpříkazem.
  • Chcete-li použít --update-check, použijte update podpříkaz s --check-only možností.

Další možnosti, které byly k dispozici dříve, jsou stále dostupné pro použití s příslušnými dílčími příkazy. Samostatná nápověda pro jednotlivé podpříkazy je k dispozici prostřednictvím -h možnosti nebo --help možnosti: dotnet new <subcommand> --help zobrazí seznam všech podporovaných možností podpříkazu.

Kromě toho je nyní k dispozici dokončování tabulátoru pro dotnet new. Podporuje dokončování pro nainstalované názvy šablon a možnosti, které poskytuje vybraná šablona. Pokud chcete aktivovat dokončování karet pro sadu .NET SDK, přečtěte si téma Povolení dokončování tabulátoru.

Dokončování tabulátoru

Od sady .NET SDK 7.0.100 je k dispozici dokončování tabulátoru .dotnet new Podporuje dokončování pro nainstalované názvy šablon a také dokončení pro možnosti, které poskytuje vybraná šablona. Pokud chcete aktivovat dokončování karet pro sadu .NET SDK, přečtěte si téma Povolení dokončování tabulátoru.

Implicitní obnovení

Nemusíte spouštětdotnet restore, protože se spouští implicitně všemi příkazy, které vyžadují obnovení, například dotnet new, , dotnet build, dotnet run, dotnet testdotnet publisha dotnet pack. Pokud chcete zakázat implicitní obnovení, použijte tuto --no-restore možnost.

Příkaz dotnet restore je stále užitečný v určitých scénářích, kdy explicitní obnovení dává smysl, například sestavení kontinuální integrace ve službě Azure DevOps Services nebo v systémech sestavení, které potřebují explicitně řídit, kdy dojde k obnovení.

Informace o správě informačních kanálů NuGet najdete v dotnet restore dokumentaci.

Argumenty

  • TEMPLATE

    Šablona, která vytvoří instanci při vyvolání příkazu. Každá šablona může mít konkrétní možnosti, které můžete předat. Další informace najdete v tématu Možnosti šablony.

    Spuštěním můžete dotnet new list zobrazit seznam všech nainstalovaných šablon.

    Počínaje sadou .NET Core 3.0 SDK a končící sadou .NET SDK 5.0.300 rozhraní příkazového řádku hledá šablony v NuGet.org při vyvolání dotnet new příkazu v následujících podmínkách:

    • Pokud rozhraní příkazového řádku nemůže najít shodu šablony při vyvolání dotnet new, ani částečné.
    • Pokud je k dispozici novější verze šablony. V tomto případě se projekt nebo artefakt vytvoří, ale rozhraní příkazového řádku vás upozorní na aktualizovanou verzi šablony.

    Počínaje sadou .NET SDK 5.0.300 search by se měl příkaz použít k vyhledání šablon v NuGet.org.

Následující tabulka ukazuje šablony, které jsou předinstalované se sadou .NET SDK. Výchozí jazyk šablony se zobrazí v hranatých závorkách. Kliknutím na odkaz na krátký název zobrazíte konkrétní možnosti šablony.

Šablony Krátký název Jazyk Značky Představení
Konzolová aplikace console [C#], F#, VB Společná/konzola 1.0
Knihovna tříd classlib [C#], F#, VB Společné/knihovna 1.0
Aplikace WPF wpf [C#], VB Běžné nebo WPF 3.0 (5.0 pro VB)
Knihovna tříd WPF wpflib [C#], VB Běžné nebo WPF 3.0 (5.0 pro VB)
Knihovna vlastních ovládacích prvků WPF wpfcustomcontrollib [C#], VB Běžné nebo WPF 3.0 (5.0 pro VB)
Knihovna uživatelských ovládacích prvků WPF wpfusercontrollib [C#], VB Běžné nebo WPF 3.0 (5.0 pro VB)
aplikace model Windows Forms (WinForms) winforms [C#], VB Běžné nebo WinForms 3.0 (5.0 pro VB)
knihovna tříd model Windows Forms (WinForms) winformslib [C#], VB Běžné nebo WinForms 3.0 (5.0 pro VB)
Pracovní služba worker [C#] Common/Worker/Web 3,0
Projekt testů MSTest mstest [C#], F#, VB Test/MSTest 1.0
Test MSTest – třída mstest-class [C#], F#, VB Test/MSTest 1.0
NUnit 3 – testovací projekt nunit [C#], F#, VB Test/NUnit 2.1.400
NUnit 3 Testovací položka nunit-test [C#], F#, VB Test/NUnit 2,2
Testovací projekt xUnit xunit [C#], F#, VB Test/xUnit 1.0
Komponenta Razor razorcomponent [C#] Web/ASP.NET 3,0
Stránka 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 Webová aplikace blazor [C#] Web/Blazor 8.0.100
BlazorWebAssembly Samostatná aplikace blazorwasm [C#] Web/Blazor//WebAssembly/PWA 3.1.300
prázdné jádro ASP.NET web [C#], F# Web/Empty 1.0
ASP.NET Core Web App (Model-View-Controller) mvc [C#], F# Web/MVC 1.0
ASP.NET Core Web App webapp, razor [C#] Web/MVC/Razor Pages 2.2, 2.0
Knihovna tříd Razor razorclasslib [C#] Web/Razor/Library/Razor Class Library 2.1
Webové rozhraní API ASP.NET Core webapi [C#], F# Webové/ webové rozhraní API, rozhraní API, služba/ WebAPI 1.0
ASP.NET Core API webapiaot [C#] Webové/ webové rozhraní API, rozhraní API/ služba 8.0
řadič rozhraní API ASP.NET Core apicontroller [C#] Web/ASP.NET 8.0
služba ASP.NET Core gRPC grpc [C#] Web/gRPC 3,0
dotnet gitignore file gitignore Config 3,0
global.json soubor globaljson Config 2.0
Konfigurace NuGet nugetconfig Config 1.0
Soubor manifestu místního nástroje Dotnet tool-manifest Config 3,0
Konfigurace webu webconfig Config 1.0
Soubor řešení sln Řešení 1.0
Soubor vyrovnávací paměti protokolu proto Web/gRPC 3,0
Soubor EditorConfig editorconfig Config 6.0

Následující tabulka uvádí šablony, které byly ukončeny a už nejsou předinstalované se sadou .NET SDK. Kliknutím na odkaz na krátký název zobrazíte konkrétní možnosti šablony.

Šablony Krátký název Jazyk Značky Ukončeno od
ASP.NET Core s Angular angular [C#] Web/MVC/SPA 8.0
ASP.NET Core s React.js react [C#] Web/MVC/SPA 8.0
Blazor Serverová aplikace blazorserver [C#] Web/Blazor 8.0
Blazor Prázdná serverová aplikace blazorserver-empty [C#] Web/Blazor 8.0
BlazorWebAssembly Prázdná aplikace blazorwasm-empty [C#] Web/Blazor/WebAssembly 8.0

Možnosti

  • --dry-run

    Zobrazí souhrn toho, co by se stalo, kdyby se daný příkaz spustil, pokud by výsledkem vytvoření šablony. K dispozici od sady .NET Core 2.2 SDK.

  • --force

    Vynutí generování obsahu, i když by se změnily existující soubory. To se vyžaduje, když zvolená šablona přepíše existující soubory ve výstupním adresáři.

  • -?|-h|--help

    Vytiskne nápovědu k příkazu. Lze ho dotnet new vyvolat pro samotný příkaz nebo pro libovolnou šablonu. Například dotnet new mvc --help.

  • -lang|--language {C#|F#|VB}

    Jazyk šablony, který se má vytvořit. Jazyk, který je přijat, se liší podle šablony (viz výchozí hodnoty v oddílu argumentů ). Některé šablony nejsou platné.

    Poznámka:

    Některá prostředí se interpretují # jako speciální znak. V těchto případech uzavřete hodnotu parametru jazyka do uvozovek. Například dotnet new console -lang "F#".

  • -n|--name <OUTPUT_NAME>

    Název vytvořeného výstupu. Pokud není zadán žádný název, použije se název aktuálního adresáře.

  • -f|--framework <FRAMEWORK>

    Určuje cílovou architekturu. Očekává moniker cílové architektury (TFM). Příklady: net6.0, net7.0-macos. Tato hodnota se projeví v souboru projektu.

  • -no-update-check

    Zakáže kontrolu aktualizací balíčků šablon při vytváření instance šablony. K dispozici od sady .NET SDK 6.0.100. Při vytváření instance šablony z balíčku šablony, který byl nainstalován pomocí dotnet new --install, dotnet new zkontroluje, jestli pro šablonu existuje aktualizace. Počínaje rozhraním .NET 6 nejsou provedeny žádné kontroly aktualizací pro výchozí šablony .NET. Pokud chcete aktualizovat výchozí šablony .NET, nainstalujte verzi opravy sady .NET SDK.

  • -o|--output <OUTPUT_DIRECTORY>

    Umístění pro umístění vygenerovaného výstupu Výchozí je aktuální adresář.

  • --project <PROJECT_PATH>

    Projekt, do kterého je šablona přidána. Tento projekt se používá k vyhodnocení kontextu. Pokud není zadaný, použije se projekt v aktuálních nebo nadřazených adresářích. K dispozici od sady .NET SDK 7.0.100.

  • -d|--diagnostics

    Povolí výstup diagnostiky. K dispozici od sady .NET SDK 7.0.100.

  • -v|--verbosity <LEVEL>

    Nastaví úroveň podrobností příkazu. Povolené hodnoty jsou q[uiet], m[inimal], n[ormal]a diag[nostic]. K dispozici od sady .NET SDK 7.0.100.

Možnosti šablony

Každá šablona může mít definované další možnosti. Další informace naleznete v tématu .NET výchozí šablony pro dotnet new.

Příklady

  • Vytvoření projektu konzolové aplikace jazyka C#:

    dotnet new console
    
  • V aktuálním adresáři vytvořte projekt konzolové aplikace jazyka F#:

    dotnet new console --language "F#"
    
  • V zadaném adresáři vytvořte projekt knihovny tříd .NET Standard 2.0:

    dotnet new classlib --framework "netstandard2.0" -o MyLibrary
    
  • V aktuálním adresáři vytvořte nový projekt ASP.NET Core C# MVC bez ověřování:

    dotnet new mvc -au None
    
  • Vytvořte nový projekt xUnit:

    dotnet new xunit
    
  • V aktuálním adresáři vytvořte global.json s nastavením verze sady SDK na 8.0.101:

    dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeature
    
  • Zobrazit nápovědu pro šablonu konzolové aplikace jazyka C#:

    dotnet new console -h
    
  • Zobrazit nápovědu pro šablonu konzolové aplikace jazyka F#:

    dotnet new console --language "F#" -h
    

Viz také