NuGet paket türü ayarlama
Paketler, kullanım amacını belirtmek için bir paket türü daha ile işaretlenebilir.
Bilinen paket türleri
Dependency
tür paketleri kitaplıklara ve uygulamalara derleme veya çalışma zamanı varlıkları ekler ve herhangi bir proje türüne yüklenebilir (uyumlu oldukları varsayılarak).DotnetTool
tür paketleri, dotnet CLI tarafından yüklenebilen .NET araçlarıdır.MSBuildSdk
tür paketleri, yazılım geliştirme setlerini kullanmayı kolaylaştıran MSBuild proje SDK'larıdır.Template
tür paketleri uygulama, hizmet, araç veya sınıf kitaplığı gibi dosyalar veya projeler oluşturmak için kullanılabilecek özel şablonlar sağlar.
NuGet'in önceki sürümleriyle oluşturulan tüm paketler de dahil olmak üzere bir türle işaretlenmemiş paketler, varsayılan olarak türü olarak Dependency
kullanılır.
Not
NuGet 3.5'te paket türleri desteği eklendi.
Özel paket türüne ihtiyacınız yoksa, paket türünü açıkça ayarlamamak en iyisidir.
NuGet, hiçbir tür belirtilmediğinde türü varsayılan olarak Dependency
kullanır.
Özel paket türleri
Kullanımı bilinen paket türlerine uymuyorsa paketinizi bir veya daha fazla özel paket türüyle işaretleyebilirsiniz.
Örneğin, uygulama müşterilerinin Contoso
uzantıları yükleyebileceğini düşünün. Uygulama, uzantı yazarlarının paketlerini gerekli kurallara uygun uzantılar olarak tanımlamak için özel paket türünü ContosoExtension
kullanmasını gerektirebilir.
Uyarı
Özel paket türüne sahip bir paket Visual Studio veya nuget.exe tarafından yüklenemez. Daha fazla bilgi için bkz . NuGet/Home#10468 .
Paket türleri proje dosyasında (.csproj
):
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<PackageType>ContosoExtension</PackageType>
</PropertyGroup>
</Project>
Birden çok amaçlanan kullanımı olan paketler sınırlayıcı kullanılarak ;
birden çok paket türüyle işaretlenebilir:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<PackageType>PackageType1;PackageType2</PackageType>
</PropertyGroup>
</Project>
Paket türleri, paket türü ile Version
dizesi arasında bir ,
sınırlayıcı kullanılarak sürüm oluşturulabilir:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<PackageType>PackageType1, 1.0.0.0;PackageType2</PackageType>
</PropertyGroup>
</Project>
Paket türü dizesinin biçimi tam olarak paket kimliğine benzer. Yani paket türü, en az bir karakter ve en çok 100 karakter içeren normal ifadeyle ^\w+([_.-]\w+)*$
eşleşen büyük/küçük harfe duyarlı olmayan bir dizedir.
Sağlanırsa, paket türü sürümü bir Version
dizedir. Paket türü sürümü isteğe bağlıdır ve varsayılan olarak olarak 0.0
ayarlanır.