Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
.NET ile proje, dosya ve kaynak oluşturan şablonlar oluşturabilir ve dağıtabilirsiniz. Bu kılavuz, dotnet new komutuyla kullanmak üzere şablon oluşturmayı, yüklemeyi ve kaldırmayı öğreten bir serinin ikinci bölümüdür.
Tavsiye
.NET SDK ile birlikte gönderilen resmi .NET şablonları aşağıdaki depolarda bulunabilir:
| Şablonlar | Depo |
|---|---|
| Konsol, sınıf kitaplığı ve ortak öğe şablonları | dotnet/sdk |
| ASP.NET ve Blazor şablonları | dotnet/aspnetcore |
| ASP.NET Tek Sayfalı Uygulama şablonları | dotnet/spa-templates |
| WPF şablonları | dotnet/wpf |
| Windows Forms şablonları | dotnet/winforms |
| Test şablonları | dotnet/test-templates |
| MAUI şablonları | dotnet/maui |
komutunu çalıştırarak dotnet new list makinenize yüklenen şablonları görüntüleyebilirsiniz.
Serinin bu bölümünde şunların nasıl yapılacağını öğreneceksiniz:
- Proje şablonunun kaynaklarını oluşturun.
- Şablon yapılandırma klasörünü ve dosyasını oluşturun.
- Dosya yolundan şablon yükleyin.
- Öğe şablonunu test edin.
- Öğe şablonunu kaldırın.
Önkoşullar
.NET 9 veya sonraki bir sürüm.
Bu öğretici serisinin 1. bölümünü tamamlayın.
Bir terminal açın ve working\content klasörüne gidin.
Proje şablonu oluşturma
Proje şablonları, kullanıcıların çalışan bir kod kümesiyle başlamasını kolaylaştıran, çalışmaya hazır projeler oluşturur. .NET, konsol uygulaması veya sınıf kitaplığı gibi birkaç proje şablonu içerir. Bu örnekte, standart "Hello World" konsol çıkışını zaman uyumsuz olarak çalışan bir konsol uygulamasıyla değiştiren yeni bir konsol uygulaması projesi oluşturursunuz.
Terminalinizde working\content klasörüne gidin ve consoleasync adlı yeni bir alt klasör oluşturun. Alt klasörü girin ve standart konsol uygulamasını oluşturmak için komutunu çalıştırın dotnet new console . Yeni bir şablon oluşturmak için bu şablon tarafından üretilen dosyaları düzenleyin.
working
└───content
└───consoleasync
consoleasync.csproj
Program.cs
Program.cs değiştir
Program.cs dosyasını açın. Standart konsol projesi, konsol çıkışına asenkron olarak yazmaz, bu yüzden asenkron yazma özelliğini ekleyin. Kodu aşağıdakiyle değiştirin ve dosyayı kaydedin:
// See https://aka.ms/new-console-template for more information
await Console.Out.WriteAsync("Hello World with C#");
Artık şablonun içeriğini oluşturduğunuza göre, şablonun kök klasöründe şablon yapılandırmasını oluşturmanız gerekir.
Şablon yapılandırmasını oluşturma
Bu öğreticide şablon klasörünüz working\content\consoleasync konumundadır.
Şablon klasörünüzün kökünde özel bir klasör ve yapılandırma dosyası olduğundan şablonlar .NET tarafından tanınır.
İlk olarak, .template.configadlı yeni bir alt klasör oluşturun ve girin. Ardından template.jsonadlı yeni bir dosya oluşturun. Klasör yapınız şu şekilde görünmelidir:
working
└───content
└───consoleasync
└───.template.config
template.json
sık kullandığınız metin düzenleyicisiyle template.json açın ve aşağıdaki json kodunu yapıştırın ve kaydedin.
{
"$schema": "http://json.schemastore.org/template",
"author": "Me",
"classifications": [ "Common", "Console" ],
"identity": "ExampleTemplate.AsyncProject",
"name": "Example templates: async project",
"shortName": "consoleasync",
"sourceName":"consoleasync",
"tags": {
"language": "C#",
"type": "project"
}
}
Bu yapılandırma dosyası, şablonunuzun tüm ayarlarını içerir. Temel ayarları, name ve shortName gibi görebilirsiniz, ayrıca project olarak ayarlanmış bir tags/type değeri de vardır. Bu, şablonunuzu "proje" şablonu olarak kategorilere ayırır. Oluşturduğunuz şablon türüyle ilgili bir kısıtlama yoktur.
item ve project değerleri, kullanıcıların aradıkları şablon türünü kolayca filtreleyebilmeleri için .NET tarafından önerilen yaygın adlardır.
Öğe sourceName , kullanıcı şablonu kullandığında değiştirilen öğedir. Yapılandırma dosyasındaki değeri sourceName her dosya adında ve dosya içeriğinde aranılır ve varsayılan olarak geçerli klasörün adıyla değiştirilir.
-n veya --name parametresi komutuyla dotnet new geçirildiğinde, sağlanan değer geçerli klasör adı yerine kullanılır. Bu şablon söz konusu olduğunda, consoleasync.csproj dosyasının adıyla değiştirilir.
öğe, classifications çalıştırdığınızda ve şablonların listesini aldığınızda gördüğünüz dotnet new sütununu temsil eder. Kullanıcılar sınıflandırma etiketlerine göre de arama yapabilir.
tags dosyasındaki özelliği etiketler listesiyle karıştırmayınclassifications. Bunlar ne yazık ki aynı adlı iki farklı kavramdır.
template.json dosyasının tam şeması JSON Şema Deposu'nda bulunur ve template.jsonbaşvurusu bölümünde açıklanmıştır.
template.json dosyası hakkında daha fazla bilgi için dotnet templating wiki'sine bakın.
Artık geçerli bir .template.config/template.json dosyanız olduğuna göre, şablonunuz yüklenmeye hazırdır. Şablonu yüklemeden önce, bölme veyaobj klasörleri gibi, şablonunuzda yer almasını istemediğiniz ek klasörleri ve dosyaları sildiğinizden emin olun. Terminalinizde consoleasync klasörüne gidin ve geçerli klasörde bulunan şablonu yüklemek için komutunu çalıştırın dotnet new install .\ . Linux veya macOS işletim sistemi kullanıyorsanız eğik çizgi kullanın: dotnet new install ./.
dotnet new install .\
Bu komut, yüklü şablonların bir listesini oluşturur ve bu liste sizinkileri içermelidir.
The following template packages will be installed:
<root path>\working\content\consoleasync
Success: <root path>\working\content\consoleasync installed the following templates:
Templates Short Name Language Tags
-------------------------------------------- ------------------- ------------ ----------------------
Example templates: async project consoleasync [C#] Common/Console
Proje şablonunu test etme
Artık bir proje şablonunu yüklediğinize göre, bunu test edin.
Test klasörüne gidin.
Aşağıdaki komutla,
dotnet runkomutunu kullanarak kolayca test edebileceğiniz çalışan bir proje oluşturan yeni bir konsol uygulaması oluşturun.dotnet new consoleasync -n MyProjectAşağıdaki çıkışı alırsınız.
The template "Example templates: async project" was created successfully.Aşağıdaki komutu kullanarak projeyi çalıştırın.
dotnet runAşağıdaki çıkışı alırsınız.
Hello World with C#
Tebrikler! .NET ile bir proje şablonu oluşturdunuz ve dağıttınız. Bu öğretici serisinin sonraki bölümüne hazırlanırken, oluşturduğunuz şablonu kaldırın. Test klasöründeki tüm dosyaları da sildiğinizden emin olun. Böylece, bu öğretici serisinin bir sonraki bölümüne hazır bir temiz duruma geri dönersiniz.
Şablonu kaldırma
Terminalinizde consoleasync klasörüne gidin ve geçerli klasörde bulunan şablonu kaldırmak için aşağıdaki komutu çalıştırın:
-
Windows'da:
dotnet new uninstall .\ -
Linux veya macOS'ta:
dotnet new uninstall ./
Bu komut, kaldırılan şablonların bir listesini oluşturur ve bu liste sizinkileri de içerir.
Success: <root path>\working\content\consoleasync was uninstalled.
İstediğiniz zaman, her şablon paketi için kaldırma komutunun da dahil olduğu yüklü şablon paketlerinin listesini görmek için kullanabilirsiniz dotnet new uninstall .
Sonraki Adımlar
Bu öğreticide bir proje şablonu oluşturdunuz. Hem öğe hem de proje şablonlarını kullanımı kolay bir dosyada paketlemeyi öğrenmek için bu öğretici serisine devam edin.