Paket tüketimi iş akışı

Kuruluşunuzun oluşturabileceği nuget.org ve özel paket galerileri arasında, uygulamalarınızda ve hizmetlerinizde kullanmak üzere on binlerce son derece yararlı paket bulabilirsiniz. Ancak kaynak ne olursa olsun, bir paketin tüketilmesi aynı genel iş akışını izler.

Flow of going to a package source, finding a package, installing it in a project, then adding a using statement and calls to the package API

* Visual Studio ve dotnet.exe sadece. Komut nuget install proje dosyalarını veya packages.config dosyayı değiştirmez; girdiler el ile yönetilmelidir.

Diğer ayrıntılar için bkz. Paketleri Bulma ve Seçme ve Paket yüklendiğinde ne olur?.

NuGet, proje türüne ve NuGet sürümünüze bağlı olarak, yüklenen her paketin kimliğini ve sürüm numarasını anımsar ve bunu proje dosyasında (PackageReference kullanarak) veya packages.configiçinde kaydeder. NuGet 4.0+ ile PackageReference tercih edilir, ancak bu Paket Yöneticisi kullanıcı arabirimi aracılığıyla Visual Studio yapılandırılabilir. Her durumda, projeniz için bağımlılıkların tam listesini görmek için istediğiniz zaman uygun dosyaya bakabilirsiniz.

İpucu

Yazılımınızda kullanmayı planladığınız her paketin lisansını her zaman denetlemeniz akıllıca olur. nuget.org her paketin açıklama sayfasının sağ tarafında bir Lisans Bilgileri bağlantısı bulunur. Bir paket lisans koşullarını belirtmezse, paket sayfasındaki Kişi sahipleri bağlantısını kullanarak doğrudan paket sahibine başvurun. Microsoft, üçüncü taraf paket sağlayıcılarından size herhangi bir fikri mülkiyet lisansı vermez ve üçüncü taraflar tarafından sağlanan bilgilerden sorumlu değildir.

Paketleri yüklerken, NuGet genellikle paketin önbelleğinden zaten kullanılabilir olup olmadığını denetler. Genel paketleri ve önbellek klasörlerini yönetme konusunda açıklandığı gibi bu önbelleği komut satırından el ile temizleyebilirsiniz.

NuGet ayrıca paket tarafından desteklenen hedef çerçevelerin projenizle uyumlu olmasını sağlar. Paket uyumlu derlemeler içermiyorsa, NuGet bir hata görüntüler. Bkz. Uyumsuz paket hatalarını çözme.

Kaynak depoya proje kodu eklerken genellikle NuGet paketleri dahil etmezsiniz. Daha sonra depoyu kopyalayanlar veya Visual Studio Team Services gibi sistemlerde derleme aracıları da dahil olmak üzere projeyi başka bir şekilde edinenler, derlemeyi çalıştırmadan önce gerekli paketleri geri yüklemelidir:

Flow of restoring NuGet packages by cloning a repository and using either a restore command

Paket Geri Yükleme , proje dosyasındaki bilgileri kullanır veya packages.config tüm bağımlılıkları yeniden yükler. Bağımlılık Çözümlemesi'nde açıklandığı gibi, sürece ilişkin farklılıklar olduğunu unutmayın. Ayrıca, yukarıdaki diyagramda Paket Yöneticisi Konsolu için geri yükleme komutu gösterilmez çünkü Konsol'la birlikteyseniz, genellikle paketleri otomatik olarak geri yükleyen ve çözüm düzeyi komutunu gösterildiği gibi sağlayan Visual Studio bağlamındasınız demektir.

Bazen, bir projeye zaten dahil olan paketlerin yeniden yüklenmesi gerekir ve bu da bağımlılıkları yeniden yükleyebilir. Komutu veya NuGet Paket Yöneticisi Konsolu'nu nuget reinstall kullanarak bunu kolayca yapabilirsiniz. Ayrıntılar için bkz. Paketleri Yeniden Yükleme ve Güncelleştirme.

Son olarak, NuGet davranışı dosyalar tarafından NuGet.Config yönlendirilir. NuGet Davranışını Yapılandırma bölümünde açıklandığı gibi, belirli ayarları farklı düzeylerde merkezileştirmek için birden çok dosya kullanılabilir.

NuGet Paketi yüklemenin yolları

NuGet paketleri aşağıdaki tabloda yer alan yöntemlerden herhangi biri kullanılarak indirilir ve yüklenir.

Araç Platformlar Açıklama
dotnet CLI Tümü .NET Core ve .NET Standart kitaplıkları ve .NET Framework hedefleyen SDK stili projeler için CLI aracı (bkz. SDK özniteliği). package_name> tarafından <tanımlanan paketi alır ve proje dosyasına bir başvuru ekler. Ayrıca bağımlılıkları alır ve yükler.
Visual Studio Windows ve Mac Paketleri ve bunların bağımlılıklarını belirtilen paket kaynağından bir projeye göz atabileceğiniz, seçebileceğiniz ve yükleyebileceğiniz bir kullanıcı arabirimi sağlar. Proje dosyasına yüklü paketlere başvurular ekler.
Paket Yöneticisi Konsolu (Visual Studio) Yalnızca Windows Seçilen bir kaynaktan package_name> tarafından <tanımlanan paketi alır ve çözümdeki belirli bir projeye yükler, ardından proje dosyasına bir başvuru ekler. Ayrıca bağımlılıkları alır ve yükler.
nuget.exe CLI Tümü .NET Standart kitaplıklarını hedefleyen .NET Framework kitaplıkları ve SDK stili olmayan projeler için CLI aracı. package_name> tarafından <tanımlanan paketi alır ve içeriğini geçerli dizindeki bir klasöre genişletir; bir dosyada packages.config listelenen tüm paketleri de alabilir. Ayrıca bağımlılıkları alır ve yükler, ancak veya packages.configproje dosyalarında hiçbir değişiklik yapar.