dotnet new <TEMPLATE>

Bu makale şunlar için geçerlidir: ✔️ .NET Core 3.1 SDK ve sonraki sürümler

Veri Akışı Adı

dotnet new - Belirtilen şablonu temel alan yeni bir proje, yapılandırma dosyası veya çözüm oluşturur.

Özet

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

Açıklama

komutu, dotnet new şablona dayalı bir .NET projesi veya diğer yapıtlar oluşturur.

komut, belirtilen şablon ve seçeneklere göre diskte yapıtlar oluşturmak için şablon altyapısını çağırır.

Not

.NET 7 SDK'sı ile başlayarak söz dotnet new dizimi değişti:

  • , , ve seçenekleri , , searchinstallve uninstall alt komutları oldulist.--uninstall --install--search--list
  • Bu --update-apply seçenek alt komut haline geldi update .
  • kullanmak --update-checkiçin seçeneğiyle update birlikte --check-only alt komutunu kullanın.

Daha önce kullanılabilir olan diğer seçenekler, ilgili alt komutları ile birlikte kullanılmaya devam eder. Veya seçeneği aracılığıyla -h --help her alt komut için ayrı yardım sağlanır: dotnet new <subcommand> --help alt komut için desteklenen tüm seçenekleri listeler.

Ayrıca, artık için sekme tamamlama kullanılabilir dotnet new. Yüklü şablon adlarının ve seçilen bir şablonun sağladığı seçeneklerin tamamlanmasını destekler. .NET SDK'sı için sekme tamamlama özelliğini etkinleştirmek için bkz . Sekme tamamlamayı etkinleştirme.

Sekme tamamlama

.NET SDK 7.0.100'den başlayarak, için dotnet newsekme tamamlama kullanılabilir. Yüklü şablon adları için tamamlamanın yanı sıra seçili bir şablonun sağladığı seçeneklerin tamamlanmasını destekler. .NET SDK'sı için sekme tamamlama özelliğini etkinleştirmek için bkz . Sekme tamamlamayı etkinleştirme.

Örtük geri yükleme

, , dotnet publishve dotnet packgibi dotnet testdotnet rundotnet builddotnet newgeri yükleme gerektiren tüm komutlar tarafından örtük olarak çalıştırıldığından, komutunu çalıştırmanız dotnet restore gerekmez. Örtük geri yüklemeyi devre dışı bırakmak için seçeneğini kullanın --no-restore .

Komutudotnet restore, Azure DevOps Services'teki sürekli tümleştirme derlemeleri veya geri yüklemenin ne zaman gerçekleştiğini açıkça denetlemesi gereken derleme sistemleri gibi açıkça geri yüklemenin anlamlı olduğu bazı senaryolarda hala yararlıdır.

NuGet akışlarını yönetme hakkında bilgi için belgelere dotnet restore bakın.

Bağımsız değişkenler

  • TEMPLATE

    Komut çağrıldığında örnek oluşturacak şablon. Her şablonun geçirebileceğiniz belirli seçenekleri olabilir. Daha fazla bilgi için bkz . Şablon seçenekleri.

    Tüm yüklü şablonların listesini görmek için komutunu çalıştırabilirsiniz dotnet new list .

    .NET Core 3.0 SDK'sı ile başlayıp .NET SDK 5.0.300 ile biten CLI, komutu aşağıdaki koşullarda çağırdığınızda dotnet new NuGet.org'de şablonları arar:

    • CLI çağrılırken dotnet newbir şablon eşleşmesi bulamazsa, kısmi bile olmaz.
    • Şablonun daha yeni bir sürümü varsa. Bu durumda proje veya yapıt oluşturulur, ancak CLI şablonun güncelleştirilmiş bir sürümü hakkında sizi uyarır.

    .NET SDK 5.0.300'den başlayarak, search komut NuGet.org şablonları aramak için kullanılmalıdır.

Aşağıdaki tabloda .NET SDK'sı ile önceden yüklenmiş olarak gelen şablonlar gösterilmektedir. Şablonun varsayılan dili köşeli ayraç içinde gösterilir. Belirli şablon seçeneklerini görmek için kısa ad bağlantısına tıklayın.

Şablonlar Kısa ad Dil Etiketler Sunulan özellikler
Konsol Uygulaması console [C#], F#, VB Ortak/Konsol 1.0
Sınıf kitaplığı classlib [C#], F#, VB Ortak/Kitaplık 1.0
WPF Uygulaması wpf [C#], VB Ortak/WPF 3.0 (VB için 5.0)
WPF Sınıf kitaplığı wpflib [C#], VB Ortak/WPF 3.0 (VB için 5.0)
WPF Özel Denetim Kitaplığı wpfcustomcontrollib [C#], VB Ortak/WPF 3.0 (VB için 5.0)
WPF Kullanıcı Denetimi Kitaplığı wpfusercontrollib [C#], VB Ortak/WPF 3.0 (VB için 5.0)
Windows Forms (WinForms) Uygulaması winforms [C#], VB Ortak/WinForms 3.0 (VB için 5.0)
Windows Forms (WinForms) Sınıf kitaplığı winformslib [C#], VB Ortak/WinForms 3.0 (VB için 5.0)
Çalışan Hizmeti worker [C#] Ortak/Çalışan/Web 3.0
MSTest Test Projesi mstest [C#], F#, VB Test/MSTest 1.0
MSTest Test Sınıfı mstest-class [C#], F#, VB Test/MSTest 1.0
NUnit 3 Test Projesi nunit [C#], F#, VB Test/NUnit 2.1.400
NUnit 3 Test Öğesi nunit-test [C#], F#, VB Test/NUnit 2.2
xUnit Test Projesi xunit [C#], F#, VB Test/xUnit 1.0
Razor Bileşeni razorcomponent [C#] Web/ASP.NET 3.0
Razor Sayfası 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 Web Uygulaması blazor [C#] Web/Blazor 8.0.100
BlazorWebAssembly Tek Başına Uygulama blazorwasm [C#] Web/Blazor//WebAssemblyPWA 3.1.300
ASP.NET Çekirdeği Boş web [C#], F# Web/Boş 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 Sayfaları 2.2, 2.0
Razor Sınıf Kitaplığı razorclasslib [C#] Web/Razor/Library/Razor Sınıf Kitaplığı 2.1
ASP.NET Core Web API'si webapi [C#], F# Web/Web API/API/Service/WebAPI 1.0
ASP.NET Core API webapiaot [C#] Web/Web API'si/API/Hizmet 8.0
ASP.NET Core API denetleyicisi apicontroller [C#] Web/ASP.NET 8.0
ASP.NET Core gRPC Hizmeti grpc [C#] Web/gRPC 3.0
dotnet gitignore dosyası gitignore Config 3.0
global.json dosyası globaljson Config 2.0
NuGet Yapılandırması nugetconfig Config 1.0
Dotnet yerel araç bildirim dosyası tool-manifest Config 3.0
Web Yapılandırması webconfig Config 1.0
Çözüm Dosyası sln Çözüm 1.0
Protokol Arabellek Dosyası proto Web/gRPC 3.0
EditorConfig dosyası editorconfig Config 6,0

Aşağıdaki tabloda, sonlandırılan ve artık .NET SDK'sı ile önceden yüklenmemiş şablonlar gösterilmektedir. Belirli şablon seçeneklerini görmek için kısa ad bağlantısına tıklayın.

Şablonlar Kısa ad Dil Etiketler Sona erdiğinden beri
Angular ile ASP.NET Core angular [C#] Web/MVC/SPA 8.0
React.js ile ASP.NET Core react [C#] Web/MVC/SPA 8.0
Blazor Sunucu Uygulaması blazorserver [C#] Web/Blazor 8.0
Blazor Sunucu Uygulaması Boş blazorserver-empty [C#] Web/Blazor 8.0
BlazorWebAssembly Uygulama Boş blazorwasm-empty [C#] Web/Blazor/WebAssembly 8.0

Seçenekler

  • --dry-run

    Verilen komut çalıştırıldığında bir şablon oluşturulmasına neden olursa neler olacağının özetini görüntüler. .NET Core 2.2 SDK'sı ile kullanılabilir.

  • --force

    Mevcut dosyaları değiştirse bile içeriğin oluşturulmasını zorlar. Seçilen şablon çıktı dizinindeki mevcut dosyaları geçersiz kıldığında bu gereklidir.

  • -?|-h|--help

    Komutun yardımını yazdırır. Komutun dotnet new kendisi veya herhangi bir şablon için çağrılabilir. Örneğin, dotnet new mvc --help.

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

    Oluşturulacak şablonun dili. Kabul edilen dil şablona göre değişir (bağımsız değişkenler bölümündeki varsayılan değerlere bakın). Bazı şablonlar için geçerli değil.

    Not

    Bazı kabuklar özel bir karakter olarak yorumlar # . Böyle durumlarda, dil parametresi değerini tırnak içine alın. Örneğin, dotnet new console -lang "F#".

  • -n|--name <OUTPUT_NAME>

    Oluşturulan çıkışın adı. Ad belirtilmezse, geçerli dizinin adı kullanılır.

  • -f|--framework <FRAMEWORK>

    Hedef çerçeveyi belirtir. Bir hedef çerçeve adı (TFM) bekler. Örnekler: "net6.0", "net7.0-macos". Bu değer proje dosyasına yansıtılır.

  • -no-update-check

    Şablon örneği oluştururken şablon paketi güncelleştirmelerinin denetlenme özelliğini devre dışı bırakır. .NET SDK 6.0.100'den itibaren kullanılabilir. kullanılarak dotnet new --installdotnet new yüklenen bir şablon paketinden şablonun örneğini oluştururken, şablon için bir güncelleştirme olup olmadığını denetler. .NET 6'dan başlayarak, .NET varsayılan şablonları için güncelleştirme denetimi yapılmaz. .NET varsayılan şablonlarını güncelleştirmek için .NET SDK'sının düzeltme eki sürümünü yükleyin.

  • -o|--output <OUTPUT_DIRECTORY>

    Oluşturulan çıkışı yerleştirmek için konum. Geçerli dizin varsayılandır.

  • --project <PROJECT_PATH>

    Şablonun eklendiği proje. Bu proje bağlam değerlendirmesi için kullanılır. Belirtilmezse, geçerli veya üst dizinlerdeki proje kullanılır. .NET SDK 7.0.100'den itibaren kullanılabilir.

  • -d|--diagnostics

    Tanılama çıkışını etkinleştirir. .NET SDK 7.0.100'den itibaren kullanılabilir.

  • -v|--verbosity <LEVEL>

    Komutun ayrıntı düzeyini ayarlar. İzin verilen değerler , m[inimal], n[ormal]ve diag[nostic]değerleridirq[uiet]. .NET SDK 7.0.100'den itibaren kullanılabilir.

Şablon seçenekleri

Her şablonun tanımlanmış ek seçenekleri olabilir. Daha fazla bilgi için bkz . için dotnet new.NET varsayılan şablonları.

Örnekler

  • C# konsol uygulaması projesi oluşturma:

    dotnet new console
    
  • Geçerli dizinde bir F# konsol uygulaması projesi oluşturun:

    dotnet new console --language "F#"
    
  • Belirtilen dizinde bir .NET Standard 2.0 sınıf kitaplığı projesi oluşturun:

    dotnet new classlib --framework "netstandard2.0" -o MyLibrary
    
  • Geçerli dizinde kimlik doğrulaması olmadan yeni bir ASP.NET Core C# MVC projesi oluşturun:

    dotnet new mvc -au None
    
  • Yeni bir xUnit projesi oluşturun:

    dotnet new xunit
    
  • GEÇERLI dizinde SDK sürümünü 8.0.101 olarak ayarlı bir global.json oluşturun:

    dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeature
    
  • C# konsol uygulaması şablonu için yardımı göster:

    dotnet new console -h
    
  • F# konsol uygulaması şablonu için yardım göster:

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

Ayrıca bkz.