dotnet new <TEMPLATE>
Ten artykuł dotyczy: ✔️ zestaw .NET Core 3.1 SDK i nowsze wersje
dotnet new
— Tworzy nowy projekt, plik konfiguracji lub rozwiązanie na podstawie określonego szablonu.
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
Polecenie dotnet new
tworzy projekt .NET lub inne artefakty na podstawie szablonu.
Polecenie wywołuje aparat szablonów, aby utworzyć artefakty na dysku na podstawie określonego szablonu i opcji.
Uwaga
Począwszy od zestawu .NET 7 SDK, składnia dotnet new
uległa zmianie:
- Opcje
--list
,--search
,--install
i--uninstall
stały sięlist
poleceniami ,install
search
, iuninstall
podrzędnymi. - Opcja
--update-apply
stała sięupdate
podpolecenia. - Aby użyć
--update-check
polecenia , użyjupdate
polecenia podrzędnego z opcją--check-only
.
Inne opcje, które były dostępne wcześniej, są nadal dostępne do użycia z odpowiednimi podpoleceniami.
Oddzielna pomoc dla każdego podpolecenia jest dostępna za pośrednictwem -h
opcji lub --help
: dotnet new <subcommand> --help
zawiera listę wszystkich obsługiwanych opcji dla podpolecenia.
Ponadto uzupełnianie karty jest teraz dostępne dla programu dotnet new
. Obsługuje uzupełnianie dla zainstalowanych nazw szablonów i opcji dostępnych przez wybrany szablon.
Aby aktywować uzupełnianie kart dla zestawu .NET SDK, zobacz Włączanie uzupełniania kart.
Począwszy od zestawu .NET SDK 7.0.100, uzupełnianie karty jest dostępne dla programu dotnet new
. Obsługuje uzupełnianie dla zainstalowanych nazw szablonów, a także uzupełnianie opcji dostępnych przez wybrany szablon.
Aby aktywować uzupełnianie kart dla zestawu .NET SDK, zobacz Włączanie uzupełniania kart.
Nie trzeba uruchamiaćdotnet restore
, ponieważ jest ona uruchamiana niejawnie przez wszystkie polecenia, które wymagają przywrócenia, takie jak dotnet new
, , dotnet build
, dotnet run
dotnet test
, , dotnet publish
, i dotnet pack
. Aby wyłączyć niejawne przywracanie, użyj --no-restore
opcji .
Polecenie dotnet restore
jest nadal przydatne w niektórych scenariuszach, w których jawne przywracanie ma sens, takie jak kompilacje ciągłej integracji w usługach Azure DevOps Services lub w systemach kompilacji, które muszą jawnie kontrolować, kiedy nastąpi przywracanie.
Aby uzyskać informacje na temat zarządzania kanałami informacyjnymi NuGet, zobacz dokumentacjędotnet restore
.
TEMPLATE
Szablon do utworzenia wystąpienia podczas wywoływanego polecenia. Każdy szablon może mieć określone opcje, które można przekazać. Aby uzyskać więcej informacji, zobacz Opcje szablonu.
Możesz uruchomić polecenie
dotnet new list
, aby wyświetlić listę wszystkich zainstalowanych szablonów.Począwszy od zestawu .NET Core 3.0 SDK i kończącego się zestawem .NET SDK 5.0.300, interfejs wiersza polecenia wyszukuje szablony w NuGet.org podczas wywoływania
dotnet new
polecenia w następujących warunkach:- Jeśli interfejs wiersza polecenia nie może znaleźć dopasowania szablonu podczas wywoływania
dotnet new
, nawet częściowe. - Jeśli jest dostępna nowsza wersja szablonu. W takim przypadku projekt lub artefakt jest tworzony, ale interfejs wiersza polecenia ostrzega o zaktualizowanej wersji szablonu.
Począwszy od zestawu .NET SDK 5.0.300,
search
polecenie powinno służyć do wyszukiwania szablonów w NuGet.org.- Jeśli interfejs wiersza polecenia nie może znaleźć dopasowania szablonu podczas wywoływania
W poniższej tabeli przedstawiono szablony, które zostały wstępnie zainstalowane przy użyciu zestawu .NET SDK. Domyślny język szablonu jest wyświetlany wewnątrz nawiasów kwadratowych. Kliknij link krótkiej nazwy, aby wyświetlić określone opcje szablonu.
Szablony | Krótka nazwa | Język | Tagi | Wprowadzono |
---|---|---|---|---|
Aplikacja konsolowa | console |
[C#], F#, VB | Common/Console | 1.0 |
Biblioteka klas | classlib |
[C#], F#, VB | Common/Library | 1.0 |
Aplikacja WPF | wpf |
[C#], VB | Common/WPF | 3.0 (5.0 dla języka VB) |
Biblioteka klas WPF | wpflib |
[C#], VB | Common/WPF | 3.0 (5.0 dla języka VB) |
Biblioteka kontrolek niestandardowych WPF | wpfcustomcontrollib |
[C#], VB | Common/WPF | 3.0 (5.0 dla języka VB) |
Biblioteka kontroli użytkownika WPF | wpfusercontrollib |
[C#], VB | Common/WPF | 3.0 (5.0 dla języka VB) |
Aplikacja Windows Forms (WinForms) | winforms |
[C#], VB | Common/WinForms | 3.0 (5.0 dla języka VB) |
Biblioteka klas formularzy systemu Windows (WinForms) | winformslib |
[C#], VB | Common/WinForms | 3.0 (5.0 dla języka VB) |
Usługa procesu roboczego | worker |
[C#] | Common/Worker/Web | 3.0 |
Projekt testowy MSTest | mstest |
[C#], F#, VB | Test/MSTest | 1.0 |
MSTest Test, klasa | mstest-class |
[C#], F#, VB | Test/MSTest | 1.0 |
Projekt testowy NUnit 3 | nunit |
[C#], F#, VB | Test/NUnit | 2.1.400 |
Element testowy NUnit 3 | nunit-test |
[C#], F#, VB | Test/NUnit | 2,2 |
Projekt testowy xUnit | xunit |
[C#], F#, VB | Test/xUnit | 1.0 |
Składnik Razor | razorcomponent |
[C#] | Sieć Web/ASP.NET | 3.0 |
Strona Razor | page |
[C#] | Sieć Web/ASP.NET | 2.0 |
Widoki MVCPorty | viewimports |
[C#] | Sieć Web/ASP.NET | 2.0 |
Widok MVCStart | viewstart |
[C#] | Sieć Web/ASP.NET | 2.0 |
Blazor Aplikacja internetowa | blazor |
[C#] | Sieć/Blazor | 8.0.100 |
BlazorWebAssembly Aplikacja autonomiczna | blazorwasm |
[C#] | Sieć Web/Blazor/WebAssembly/PWA | 3.1.300 |
Pusta ASP.NET Core | web |
[C#], F# | Sieć Web/pusty | 1.0 |
ASP.NET Core Web App (Model-View-Controller) | mvc |
[C#], F# | Sieć Web/MVC | 1.0 |
ASP.NET Core Web App | webapp, razor |
[C#] | Web/MVC/Razor Pages | 2.2, 2.0 |
Biblioteka klas Razor | razorclasslib |
[C#] | Biblioteka klas Web/Razor/Library/Razor | 2.1 |
Internetowy interfejs API platformy ASP.NET Core | webapi |
[C#], F# | Internetowy/internetowy interfejs API/interfejs API/usługa/WebAPI | 1.0 |
ASP.NET Core API | webapiaot |
[C#] | Internetowy/internetowy interfejs API/interfejs API/usługa | 8.0 |
kontroler interfejsu API platformy ASP.NET Core | apicontroller |
[C#] | Sieć Web/ASP.NET | 8.0 |
ASP.NET Core gRPC Service | grpc |
[C#] | Sieć Web/gRPC | 3.0 |
dotnet gitignore plik | gitignore |
Config | 3.0 | |
plik global.json | globaljson |
Config | 2.0 | |
Konfiguracja narzędzia NuGet | nugetconfig |
Config | 1.0 | |
Plik manifestu narzędzia lokalnego Dotnet | tool-manifest |
Config | 3.0 | |
Konfiguracja sieci Web | webconfig |
Config | 1.0 | |
Plik rozwiązania | sln |
Rozwiązanie | 1.0 | |
Plik buforu protokołu | proto |
Sieć Web/gRPC | 3.0 | |
Plik EditorConfig | editorconfig |
Config | 6.0 |
W poniższej tabeli przedstawiono szablony, które zostały wycofane i nie są już wstępnie zainstalowane z zestawem .NET SDK. Kliknij link krótkiej nazwy, aby wyświetlić określone opcje szablonu.
Szablony | Krótka nazwa | Język | Tagi | Odkąd zaprzestano |
---|---|---|---|---|
ASP.NET Core z platformą Angular | angular |
[C#] | Sieć Web/MVC/SPA | 8.0 |
ASP.NET Core z React.js | react |
[C#] | Sieć Web/MVC/SPA | 8.0 |
Blazor Aplikacja serwera | blazorserver |
[C#] | Sieć/Blazor | 8.0 |
Blazor Pusta aplikacja serwera | blazorserver-empty |
[C#] | Sieć/Blazor | 8.0 |
BlazorWebAssembly Pusta aplikacja | blazorwasm-empty |
[C#] | Sieć Web/Blazor/WebAssembly | 8.0 |
--dry-run
Przedstawia podsumowanie tego, co by się stało, gdyby dane polecenie zostało uruchomione, gdyby spowodowałoby utworzenie szablonu. Dostępny od wersji .NET Core 2.2 SDK.
--force
Wymusza wygenerowanie zawartości, nawet jeśli spowoduje zmianę istniejących plików. Jest to wymagane, gdy wybrany szablon zastąpi istniejące pliki w katalogu wyjściowym.
-?|-h|--help
Wyświetla pomoc dotyczącą polecenia . Można go wywołać dla
dotnet new
samego polecenia lub dla dowolnego szablonu. Na przykładdotnet new mvc --help
.-lang|--language {C#|F#|VB}
Język szablonu do utworzenia. Akceptowany język różni się w zależności od szablonu (zobacz wartości domyślne w sekcji argumentów ). Nieprawidłowe dla niektórych szablonów.
Uwaga
Niektóre powłoki interpretują
#
jako znak specjalny. W takich przypadkach należy ująć wartość parametru języka w cudzysłowy. Na przykładdotnet new console -lang "F#"
.-n|--name <OUTPUT_NAME>
Nazwa utworzonych danych wyjściowych. Jeśli nie określono nazwy, używana jest nazwa bieżącego katalogu.
-f|--framework <FRAMEWORK>
Określa platformę docelową. Oczekuje ona nazwy docelowej platformy (TFM). Przykłady: "net6.0", "net7.0-macos". Ta wartość zostanie odzwierciedlona w pliku projektu.
-no-update-check
Wyłącza sprawdzanie aktualizacji pakietu szablonu podczas tworzenia wystąpienia szablonu. Dostępne od wersji .NET SDK 6.0.100. Podczas tworzenia wystąpienia szablonu z pakietu szablonu, który został zainstalowany przy użyciu programu
dotnet new --install
, sprawdza,dotnet new
czy istnieje aktualizacja szablonu. Począwszy od platformy .NET 6, dla szablonów domyślnych platformy .NET nie są wykonywane żadne testy aktualizacji. Aby zaktualizować domyślne szablony platformy .NET, zainstaluj wersję poprawki zestawu .NET SDK.-o|--output <OUTPUT_DIRECTORY>
Lokalizacja do umieszczenia wygenerowanych danych wyjściowych. Domyślnie jest to katalog bieżący.
--project <PROJECT_PATH>
Projekt, do którego został dodany szablon. Ten projekt jest używany do oceny kontekstu. Jeśli nie zostanie określony, zostanie użyty projekt w katalogach bieżących lub nadrzędnych. Dostępne od wersji 7.0.100 zestawu .NET SDK.
-d|--diagnostics
Włącza dane wyjściowe diagnostyczne. Dostępne od wersji 7.0.100 zestawu .NET SDK.
-v|--verbosity <LEVEL>
Ustawia poziom szczegółowości polecenia. Dozwolone wartości to
q[uiet]
, ,n[ormal]
m[inimal]
idiag[nostic]
. Dostępne od wersji 7.0.100 zestawu .NET SDK.
Każdy szablon może mieć zdefiniowane dodatkowe opcje. Aby uzyskać więcej informacji, zobacz Szablony domyślne platformy .NET dla programu dotnet new
.
Utwórz projekt aplikacji konsolowej w języku C#:
dotnet new console
Utwórz projekt aplikacji konsolowej języka F# w bieżącym katalogu:
dotnet new console --language "F#"
Utwórz projekt biblioteki klas platformy .NET Standard 2.0 w określonym katalogu:
dotnet new classlib --framework "netstandard2.0" -o MyLibrary
Utwórz nowy projekt MVC języka C# w języku ASP.NET Core w bieżącym katalogu bez uwierzytelniania:
dotnet new mvc -au None
Utwórz nowy projekt xUnit:
dotnet new xunit
Utwórz global.json w bieżącym katalogu, ustawiając wersję zestawu SDK na 8.0.101:
dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeature
Pokaż pomoc dotyczącą szablonu aplikacji konsolowej języka C#:
dotnet new console -h
Pokaż pomoc dotyczącą szablonu aplikacji konsolowej języka F#:
dotnet new console --language "F#" -h
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: