NuGet Paket Yöneticisi kullanarak Visual Studio'da paketleri yükleme ve yönetme
Windows için Microsoft Visual Studio'daki NuGet Paket Yöneticisi kullanıcı arabirimi, projelerde ve çözümlerde NuGet paketlerini kolayca yüklemenize, kaldırmanıza ve güncelleştirmenize olanak tanır.
Makale yalnızca Windows kullanıcılarına yöneliktir. Mac için Visual Studio kullanıyorsanız bkz. Projenize NuGet paketi ekleme.
Önkoşullar
Windows için Visual Studio 2022'yi herhangi bir ile yükleyin. NET ile ilgili iş yükü.
2022 Community sürümünü visualstudio.microsoft.com ücretsiz yükleyebilir veya Professional veya Enterprise sürümünü kullanabilirsiniz.
Visual Studio 2017 ve üzeri, bir olduğunda nuGet Paket Yöneticisi otomatik olarak içerir. NET ile ilgili iş yükü yüklenir. Visual Studio Yükleyicisi'da tek tek yüklemek için Tek tek bileşenler sekmesini seçin ve ardından Kod araçları altında NuGet paket yöneticisi'ni seçin.
Visual Studio 2015 için NuGet Paket Yöneticisi eksikse, Araçlar>Uzantıları ve Güncelleştirmeleri'ni işaretleyin ve NuGet Paket Yöneticisi uzantısını arayın. Visual Studio'da uzantı yükleyicisini kullanamıyorsanız, uzantıyı doğrudan adresinden https://dist.nuget.org/index.htmlindirin.
Henüz bir hesabınız yoksa nuget.org'da ücretsiz bir hesaba kaydolun. NuGet paketini karşıya yükleyebilmeniz için önce hesabı kaydetmeniz ve onaylamanız gerekir.
Paket bulma ve yükleme
Visual Studio ile bir NuGet paketi bulmak ve yüklemek için şu adımları izleyin:
Çözüm Gezgini'da bir proje yükleyin ve ardından Proje>NuGet Paketlerini Yönet'i seçin.
Nuget Paket Yöneticisi penceresi açılır.
Seçili durumdaki kaynaktan gelen popülerliğe göre paketleri görüntülemek için Gözat sekmesini seçin (bkz . Paket kaynakları).
- Belirli bir paketi aramak için sol üst taraftaki arama kutusunu kullanın.
- Doğru paketi tanımlamaya yardımcı olmak için her paket kimliğinin yanında kısaltılmış bilgiler gösterilebilir ve seçilen paket kaynaklarına göre değişir. Örnek olarak paket indirme sayısı, yazar veya sahip profili köprüleri verilebilir.
Not
Visual Studio 17.11 ve sonraki sürümlerde paket sahipleri, seçilen paket kaynağı tarafından desteklendiğinde profil köprüleri olarak gösterilir. Paket sahipliği, paket kaynağı tarafından tanımlanır. Örneğin, bkz. nuget.org üzerinde paket sahiplerini yönetme.
Visual Studio 17.10 ve önceki sürümlerinde paket yazarı meta verileri gösterilir ve bu meta veriler düz metin olarak görünür. Daha fazla bilgi için bkz . Yazarlar paketi meta verileri.
- Ayrıntılı paket bilgilerini görmek için bir paket seçin. Sağdaki ayrıntılar bölmesi görüntülenir ve yüklenecek sürümü seçmenizi sağlar.
Sağ bölmede açılan listeden bir Sürüm seçin. Sürüm listesine yayın öncesi sürümleri eklemek istiyorsanız Ön sürümü dahil et'i seçin.
NuGet paketini yüklemek için Yükle'yi seçin. Lisans koşullarını kabul etmek isteyip istemediğiniz sorulabilir veya yüklemeyi doğrulamanız istenebilir.
Visual Studio paketi ve projedeki bağımlılıklarını yükler. Yükleme tamamlandığında, eklenen paketler Yüklü sekmesinde görünür. Paketleri Çözüm Gezgini projenizin Bağımlılık>Paketleri düğümünde de bulabilirsiniz. Bir paketi yükledikten sonra, projede bir
using
deyimiyle bu pakete başvurabilirsiniz.(İsteğe bağlı) NuGet, bir projenin paketleri kullanabileceği iki biçime sahiptir: PackageReference ve packages.config. Varsayılan biçimi ayarlamak için Araçlar>Seçenekleri'ni seçin, NuGet Paket Yöneticisi genişletin, Genel'i seçin ve ardından Varsayılan paket yönetimi biçimini seçin. Daha fazla bilgi için bkz . Varsayılan paket yönetimi biçimini seçme.
Paketi kaldırma
NuGet paketini kaldırmak için şu adımları izleyin:
projeyi Çözüm Gezgini yükleyin, Proje>NuGet Paketlerini Yönet'i seçin ve ardından Yüklü sekmesini seçin.
Sol bölmede kaldıracak paketi seçin (gerekirse Arama kutusunu kullanarak bulun) ve ardından sağ bölmeden Kaldır'ı seçin.
Paketi güncelleştirme
NuGet paketini güncelleştirmek için şu adımları izleyin:
Çözüm Gezgini'da bir proje yükleyin ve ardından Proje>NuGet Paketlerini Yönet'i seçin. Web sitesi projeleri için önce Bin klasörünü seçin.
Seçili Paket kaynağından kullanılabilir güncelleştirmeleri içeren paketleri görmek için Güncelleştirmeler sekmesini seçin. Güncelleştirme listesine yayın öncesi paketleri eklemek için Ön sürümü dahil et'i seçin.
Güncelleştirilecek paketi seçin. Sağ bölmede, açılan listeden istediğiniz Sürümü seçin ve ardından Güncelleştir'i seçin.
Bazı paketler için Güncelleştir düğmesi devre dışı bırakılır ve şu ileti görüntülenir: SDK tarafından örtük olarak başvurulur. Paketi güncelleştirmek için ait olduğu SDK'yı güncelleştirin. Bu ileti, paketin daha büyük bir çerçevenin veya SDK'nın parçası olduğunu ve bağımsız olarak güncelleştirileğini gösterir. Bu tür paketler dahili olarak ile
<IsImplicitlyDefined>True</IsImplicitlyDefined>
işaretlenir. Örneğin,Microsoft.NETCore.App
.NET Core SDK'sının bir parçasıdır ve paket sürümü, uygulama tarafından kullanılan çalışma zamanı çerçevesi sürümünden farklıdır. .NET Core'un yeni bir sürümünü indirmek için .NET Core yüklemenizi güncelleştirin. Daha fazla bilgi için bkz . .NET Core meta paketleri ve sürüm oluşturma. Bu senaryo aşağıdaki yaygın olarak kullanılan paketler için geçerlidir:- Microsoft.AspNetCore.All
- Microsoft.AspNetCore.App
- Microsoft.NETCore.App
- NETStandard.Library
Birden çok paketi en son sürümlerine güncelleştirmek için NuGet paket listesinden bunları seçin ve ardından Güncelleştir'i seçin.
Ayrıca, Yüklü sekmesinden tek bir paketi de güncelleştirebilirsiniz. Bu durumda, bir Sürüm ve Ön sürümü dahil et seçeneğini de belirleyebilirsiniz.
Çözüm paketlerini yönetme
Bir çözüm için paketleri yönetmek, aynı anda birden çok projeyle çalışmak için kullanışlı bir araçtır:
Çözüm Yöneticisi'nde bir çözüm seçin ve ardından Araçlar>NuGet Paket Yöneticisi> Çözüm için NuGet Paketlerini Yönet'i seçin.
Çözüm için NuGet Paketlerini Yönet penceresinde, işlemlerden etkilenen projeleri seçin.
Birleştir sekmesi
Geliştiriciler genellikle aynı çözümdeki farklı projelerde aynı NuGet paketinin farklı sürümlerini kullanmayı kötü bir uygulama olarak değerlendirir. Visual Studio, NuGet paketleriniz için ortak bir sürüm kullanmanıza olanak tanır. Bunu yapmak için, farklı sürüm numaralarına sahip paketlerin çözümdeki farklı projeler tarafından nerede kullanıldığını bulmak için NuGet Paket Yöneticisi penceresinin Birleştir sekmesini kullanın.
Bu örnekte ClassLibrary1 projesi EntityFramework 6.2.0 kullanırken ConsoleApp1, EntityFramework 6.1.0 kullanıyor. Paket sürümlerini birleştirmek için şu adımları izleyin:
Birleştir sekmesinde, proje listesinde güncelleştirilecek projeleri seçin.
Sürüm listesinde tüm bu projeler için kullanılacak sürümü seçin.
Yükle'yi seçin.
NuGet Paket Yöneticisi, seçili paket sürümünü seçili tüm projelere yükler ve bundan sonra paket Birleştir sekmesinde görünmez.
Paket kaynakları
Visual Studio, paket kaynaklarının sırasını yoksayar ve isteği ilk yanıtlayan kaynak olan paketi kullanır. Daha fazla bilgi için bkz . Paketleri geri yükleme. Belirli bir kaynaktan paket yükleme hakkında bilgi için bkz . Paket kaynağı eşleme.
NuGet paket kaynaklarını yönetmek için şu adımları izleyin:
Visual Studio'nun paket meta verilerini yüklediği kaynağı değiştirmek için Paket kaynağı seçicisinden bir kaynak seçin.
Paket kaynaklarınızı yönetmek için Ayarlar simgesini veya Araçlar>Seçenekleri'ni seçin.
Seçenekler penceresinde NuGet Paket Yöneticisi düğümünü genişletin ve Paket Kaynakları'nı seçin.
Kaynak eklemek için öğesini seçin+, Adı düzenleyin, Kaynak alanına URL'yi veya yolu girin ve güncelleştir'i seçin.
Kaynak artık Paket kaynağı açılan listesinde görünür.
Paket kaynağını değiştirmek için paketi seçin, Ad ve Kaynak kutularında düzenlemeler yapın ve Güncelleştir'i seçin.
Paket kaynağını devre dışı bırakmak için, listedeki adın solundaki kutunun işaretini kaldırın.
Paket kaynağını kaldırmak için seçin ve ardından X düğmesini seçin.
Bir paket kaynağı siz sildikten sonra yeniden görünürse, bu kaynak bilgisayar düzeyinde veya kullanıcı düzeyinde bir NuGet.config dosyasında listelenmiş olabilir. Bu dosyaların konumu için bkz . Yaygın NuGet yapılandırmaları. Dosyaları el ile düzenleyerek veya nuget sources komutunu kullanarak dosyalardaki paket kaynağını kaldırın.
NuGet Paket Yöneticisi Seçenekleri denetimi
Bir paket seçtiğinizde NuGet Paket Yöneticisi Sürüm seçicisinin altında genişletilebilir Seçenekler denetimi görüntülenir. Çoğu proje türü için yalnızca Önizleme penceresini göster seçeneği sağlanır.
Aşağıdaki bölümlerde kullanılabilir seçenekler açıklanmaktadır.
Yükleme ve güncelleştirme seçenekleri
Bu seçenekler yalnızca belirli proje türleri için kullanılabilir:
Bağımlılık davranışı: Bu seçenek, NuGet'in bağımlı paketlerin hangi sürümlerinin yükleneceğine nasıl karar vereceğini yapılandırır. Aşağıdaki ayarlara sahiptir:
- Bağımlılıkları yoksaymak, genellikle yüklenen paketi bozan bağımlılıkların yüklenmesini atlar.
- En düşük [Varsayılan], birincil seçilen paketin gereksinimlerini karşılayan en düşük sürüm numarasıyla bağımlılığı yükler.
- En Yüksek Düzeltme Eki , sürümü aynı ana ve ikincil sürüm numaralarıyla ancak en yüksek düzeltme eki numarasıyla yükler. Örneğin, sürüm 1.2.2 belirtilirse 1.2 ile başlayan en yüksek sürüm yüklenir
- En Yüksek İkincil , sürümü aynı ana sürüm numarasına ancak en yüksek ikincil sayı ve düzeltme eki numarasına sahip olarak yükler. Sürüm 1.2.2 belirtilirse, 1 ile başlayan en yüksek sürüm yüklenir
- En yüksek yükleme paketin en yüksek kullanılabilir sürümünü yükler.
Dosya çakışma eylemi: Bu seçenek, NuGet'in projede veya yerel makinede zaten var olan paketleri nasıl işleyeceklerini belirtir. Aşağıdaki ayarlara sahiptir:
- İstem , NuGet'e mevcut paketlerin tutulup tutulmayacağını veya üzerine yazılıp yazılmayacağını sormasını ister.
- Tümünü Yoksay, NuGet'e mevcut paketlerin üzerine yazmayı atlama talimatını verdi.
- Tümünün Üzerine Yaz, NuGet'e mevcut paketlerin üzerine yazmasını emreder.
Kaldırma seçenekleri
Bu seçenekler yalnızca belirli proje türleri için kullanılabilir:
Bağımlılıkları kaldırma: Seçildiğinde, projenin başka bir yerinde başvurulmazsa bağımlı paketleri kaldırır.
Üzerinde bağımlılıklar olsa bile kaldırmaya zorla: Seçildiğinde, projede hala başvurulsa bile paketi kaldırır. Bu seçenek genellikle bir paketi ve yüklemiş olduğu bağımlılıkları kaldırmak için Bağımlılıkları kaldır ile birlikte kullanılır. Ancak bu seçeneğin kullanılması projede bozuk başvurulara yol açabilir. Böyle bir durumda, bu diğer paketleri yeniden yüklemeniz gerekebilir.
İlgili video
- Visual Studio ile NuGet Paketi Yükleme ve Kullanma
- Channel 9 ve YouTube'da daha fazla NuGet videosu bulun.
Ayrıca bkz.
NuGet hakkında daha fazla bilgi için aşağıdaki makalelere bakın:
- NuGet nedir?
- Paket tüketimi iş akışı
- Paketleri bulma ve seçme
- Proje dosyalarında paket başvuruları
- .NET CLI kullanarak bir paket yükleyin ve kullanın.