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.
Paketler, kullanım amacını belirtmek için bir paket türü daha ile işaretlenebilir.
Bilinen paket türleri
Dependencytü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).DotnetTooltür paketleri , dotnet CLI tarafından yüklenebilen .NET araçlarıdır.MSBuildSdktür paketleri, yazılım geliştirme setlerini kullanmayı kolaylaştıran MSBuild proje SDK'larıdır .Templatetür paketleri uygulama, hizmet, araç veya sınıf kitaplığı gibi dosyalar veya projeler oluşturmak için kullanılabilecek özel şablonlar sağlar.McpServertür paketleri MCP sunucuları içerir. Bu paket türüneDotnetToolpaket türü her zaman eşlik eder, çünkü yerel bir MCP sunucusu .NET aracı olarak dağıtılır. MCP sunucusu ve NuGet hakkında bilgi için bkz. NuGet paketlerinde MCP sunucuları.
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.
Note
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 varsayılan olarak Dependency türünü 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.
Warning
Özel paket türüne sahip bir paket Visual Studio veya nuget.exetarafından yüklenemez. Daha fazla bilgi için bkz. NuGet/Home#10468 .
Paket türleri proje dosyasında ayarlanabilir (.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 , dizesi arasında bir Version 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.0ayarlanır.