Razor sınıf kitaplığını paketleme
- 3 dakika
Genellikle gerçekleştirmeniz gereken bir görev, kitaplıkları diğer geliştiriciler tarafından yeniden kullanılmak üzere paketlemektir. NuGet paketleme süreci, her bir geliştiricinin dünyanın her yerinden uygulamaları için tüm .NET başvurularını edinmesini ve düzgün bir şekilde yapılandırmasını kolaylaştırır.
Önceki ünitede modal iletişim kutusu bileşeninizi oluşturup kendi uygulamanızda kullandınız. Şimdi bunu diğer uygulamalarda yeniden kullanmak istiyorsunuz.
Bu ünitede Razor sınıf kitaplığını NuGet paketi olarak yapılandırmak için gereken adımları öğreneceksiniz. Ayrıca NuGet.org veya GitHub depoları gibi bir paket deposu hizmeti kullanarak kitaplığı dağıtım için paketlemeyi de öğrenirsiniz.
NuGet paketlemesi için Razor sınıf kitaplığını yapılandırın
.NET ekosistemi, diğer geliştiricilerin bileşenlerinizi tanımlaması ve kullanması için gereken özellikleri tanımlamayı kolaylaştırır. Tüm bu özellikleri Razor sınıf kitaplığınızın proje dosyasında (*.csproj) tanımlayabilir ve böylece kitaplıkla birlikte hareket edebilir. Kitaplığınız güncelleştirildiğinde, özellikler uygun şekilde güncellenir.
Visual Studio Proje Özellikleri - Paket iletişim paketinizi tanımlayan alanları yapılandırabilir veya doğrudan *.csproj dosyasında girdiler oluşturabilirsiniz.
Paket oluşturmak için gereken dört alan şunlardır:
| Alan | Açıklama | Varsayılan değer |
|---|---|---|
| PaketKimliği | NuGet deposunun tamamında benzersiz bir paket tanımlayıcısı. | Kütüphanenin AssemblyName'sı |
| Sürüm | Major.Minor.Patch[-Suffix]biçimindeki belirli bir sürüm numarası; burada -Suffix isteğe bağlı olarak yayın öncesi sürümleri tanımlar. | 1.0.0 |
| Yazar | Paketin yazarları. | AssemblyName |
| Şirket | Paketi oluşturmak ve yayımlamaktan sorumlu olan şirketin adı. | AssemblyName |
Bu alanlardan bazıları varsayılan değerlere sahiptir ve MyFirstLibraryşirket adına sahip bir paket yayımlamak komik görünebilir. Bu değerleri açıkça tanımlamanızı kesinlikle öneririz.
Önceki ünitede, Razor sınıf kitaplığının statik içeriğinin _content/[PACKAGE_ID]/'de kullanılabilir olduğunu ve şimdi PackageId değerinin nerede yapılandırıldığını gördünüz.
Bu değerlerin yapılandırıldığı örnek bir proje dosyası aşağıdaki örneğe benzer olabilir:
<PropertyGroup>
<PackageId>Learn.MyFirstLibrary</PackageId>
<Version>0.1.0-alpha1</Version>
<Authors>Susan Developer, Terry Programmer</Authors>
<Company>AdventureWorks</Company>
</PropertyGroup>
Projeyi oluştururken, Visual Studio Proje Özellikleri iletişim kutusunda Derlemede NuGet Paketi Oluştur seçeneğini belirleyerek veya burada gösterildiği gibi diğer paket alanlarının yanına bir GeneratePackageOnBuild giriş ekleyerek bir NuGet paketi oluşturacak şekilde de yapılandırabilirsiniz:
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
Aşağıdakiler de dahil olmak üzere birçok isteğe bağlı proje özelliğini yapılandırabilirsiniz:
- NuGet deposunda görüntülenmek için uygun bir
Description - Telif hakkı bildirimi
- Lisans bilgileri
- Simgeler
- Proje URL'leri
Özelliklerin tam listesi için MSBuild paketi hedefMicrosoft belgelerine bakın.
Kitaplığı paketleme
* .csproj dosyasına kitaplık yapılandırmasını yazdıktan sonra, Visual Studio'da, projeye sağ tıklayıp Paketle komutunu seçerek veya proje klasöründe aşağıdaki komutu çalıştırarak NuGet paketini oluşturabilirsiniz:
dotnet pack
Bu dotnet pack komutu PackageID ve sürüm numarasına sahip bir paket oluşturur ve bunu standart proje derleme çıktı klasörüne yerleştirir.