Visual Studio (PowerShell) Paket Yöneticisi konsolu ile paket yükleyip yönetme

NuGet Paket Yöneticisi konsolu NuGet paketlerini bulmak, yüklemek, kaldırmak ve güncelleştirmek için NuGet PowerShell komutlarını kullanmanıza olanak tanır. Paket Yöneticisi kullanıcı arabiriminin bir işlemi gerçekleştirmek için bir yol sağlamadığı durumlarda konsolunun kullanılması gerekir. nuget.exeKonsolunda CLI komutlarını kullanmak için, bkz. nuget.exe.

konsol Windows Visual Studio yerleşik olarak bulunur. Mac için Visual Studio veya Visual Studio Code dahil değildir.

Önemli

burada listelenen komutlar, Visual Studio Paket Yöneticisi konsoluna özgüdür ve genel bir PowerShell ortamında bulunan Paket Yönetimi modül komutlarından farklıdır. Özellikle, her ortamın diğeri üzerinde kullanılamayan komutları vardır ve aynı ada sahip komutlar, belirli bağımsız değişkenlerinde de farklılık gösterebilir. Visual Studio Paket Yönetimi konsolunu kullanırken, bu konu başlığı altında belgelenen komutlar ve bağımsız değişkenler geçerlidir.

Paket bulma ve yüklemeyi

Örneğin, bir paketi bulmak ve yüklemek üç kolay adımla yapılır:

  1. Visual Studio ' de projeyi/çözümü açın ve araçlar NuGet Paket Yöneticisi > Paket Yöneticisi konsolu komutunu kullanarak konsolunu açın.

  2. Yüklemek istediğiniz paketi bulun. Bunu zaten biliyorsanız adım 3 ' e atlayın.

    # Find packages containing the keyword "elmah"
    Find-Package elmah
    
  3. Yükleme komutunu çalıştırın:

    # Install the Elmah package to the project named MyProject.
    Install-Package Elmah -ProjectName MyProject
    

Önemli

konsolda bulunan tüm işlemler NuGet clıile de yapılabilir. ancak, konsol komutları, Visual Studio ve kaydedilmiş bir proje/çözüm bağlamında çalışır ve genellikle eşdeğer clı komutlarından daha fazlasını gerçekleştirebilir. Örneğin, konsolu aracılığıyla bir paket yüklemek, CLı komutu olmadığı halde projeye bir başvuru ekler. bu nedenle, Visual Studio çalışan geliştiriciler genellikle konsolunun clı 'ye kullanılmasını tercih eder.

İpucu

birçok konsol işlemi, bir çözümün bilinen yol adıyla Visual Studio açık olmasına bağlıdır. Kaydedilmemiş bir çözümünüz varsa veya çözüm yoksa, "çözüm açılmadı veya kaydedilmedi" hatasını görebilirsiniz. Lütfen açık ve kaydedilmiş bir çözümünüz olduğundan emin olun. " Bu, konsolunun çözüm klasörünü belirleyemediğini belirtir. Kaydedilmemiş bir çözümü kaydetme veya bir açık hesabınız yoksa bir çözüm oluşturup kaydetme, hatayı düzeltmeniz gerekir.

Konsol ve konsol denetimlerini açma

  1. Visual Studio araçlar NuGet Paket Yöneticisi > Paket Yöneticisi konsolu komutunu kullanarak konsolunu açın. konsol, istediğiniz şekilde düzenlenebileceği ve konumlandırılmış bir Visual Studio penceresidir (bkz. Visual Studio pencere düzenlerini özelleştirme).

  2. Varsayılan olarak, konsol komutları pencerenin üst kısmındaki denetimde ayarlandığı şekilde belirli bir paket kaynağına ve projeye karşı çalışır:

    paket kaynağı ve proje için konsol denetimlerini Paket Yöneticisi

  3. Farklı bir paket kaynağı ve/veya proje seçildiğinde, Bu varsayılanlar sonraki komutlara göre değişir. Varsayılanları değiştirmeden bu ayarları fazla bir şekilde değiştirmek için, çoğu komut destek -Source ve -ProjectName seçenekleri.

  4. Paket kaynaklarını yönetmek için dişli simgesini seçin. bu, > sayfasında açıklandığı gibi, > Paket Yöneticisi > paket kaynakları iletişim kutusu NuGet araçlar seçenekleri için bir kısayoldur. Ayrıca, proje seçicisinin sağında bulunan denetim konsolun içeriğini de temizler:

    konsol ayarlarını Paket Yöneticisi ve denetimleri temizle

  5. En sağdaki düğme uzun süre çalışan bir komutu keser. Örneğin, Get-Package -ListAvailable -PageSize 500 çalıştırmak birkaç dakika sürebilen varsayılan kaynakta (örneğin, NuGet.org) ilk 500 paketi listeler.

    Paket Yöneticisi konsolu denetimi durdur

Paketi yükleme

# Add the Elmah package to the default project as specified in the console's project selector
Install-Package Elmah

# Add the Elmah package to a project named UtilitiesLib that is not the default
Install-Package Elmah -ProjectName UtilitiesLib

Bkz. Install-Package.

Konsola bir paket yüklemek, bir paket yüklendiğinde ne olacağıile ilgili adımların aynısını aşağıdaki eklemelerle gerçekleştirir:

  • Konsol, ilgili lisans koşullarını örtülü anlaşmayla penceresinde görüntüler. Koşulları kabul etmiyorsanız, paketi hemen kaldırmanız gerekir.
  • Ayrıca, proje dosyasına pakete bir başvuru eklenir ve Başvurular düğümü altında Çözüm Gezgini görünür, proje dosyasındaki değişiklikleri doğrudan görmek için projeyi kaydetmeniz gerekir.

Bir paketi kaldırma

# Uninstalls the Elmah package from the default project
Uninstall-Package Elmah

# Uninstalls the Elmah package and all its unused dependencies
Uninstall-Package Elmah -RemoveDependencies 

# Uninstalls the Elmah package even if another package depends on it
Uninstall-Package Elmah -Force

Bkz. Uninstall-Package. Bir tanımlayıcı bulmanız gerekiyorsa varsayılan projede yüklü olan tüm paketleri görmek için Get-Package ' i kullanın.

Bir paketin kaldırılması aşağıdaki eylemleri gerçekleştirir:

  • Projedeki paketin başvurularını kaldırır (ve hangi yönetim biçiminin kullanımda olduğunu). Başvurular artık Çözüm Gezginigörünmüyor. ( Bin klasöründen kaldırıldığını görmek için projeyi yeniden oluşturmanız gerekebilir.)
  • Paket yüklendiğinde veya ' de yapılan tüm değişiklikleri tersine çevirir app.configweb.config .
  • Kalan hiçbir paket bu bağımlılıkları kullanıyorsa, önceden yüklenmiş bağımlılıkları kaldırır.

Bir paketi güncelleştirme

# Checks if there are newer versions available for any installed packages
Get-Package -updates

# Updates a specific package using its identifier, in this case jQuery
Update-Package jQuery

# Update all packages in the project named MyProject (as it appears in Solution Explorer)
Update-Package -ProjectName MyProject

# Update all packages in the solution
Update-Package

Bkz. Get-Package ve Update-Package

Paketi bulma

# Find packages containing keywords
Find-Package elmah
Find-Package logging

# List packages whose ID begins with Elmah
Find-Package Elmah -StartWith

# By default, Get-Package returns a list of 20 packages; use -First to show more
Find-Package logging -First 100

# List all versions of the package with the ID of "jquery"
Find-Package jquery -AllVersions -ExactMatch

Bkz. bul-Package. Visual Studio 2013 ve önceki sürümlerde, Get-Package kullanın.

Konsolun kullanılabilirliği

Visual Studio 2017 ' den başlayarak NuGet ve NuGet Paket Yöneticisi herhangi birini seçtiğinizde otomatik olarak yüklenir. NET ilgili iş yükleri; ayrıca, Visual Studio yükleyicisinde tek tek bileşenler kod araçları > NuGet paket yöneticisi seçeneğini işaretleyerek tek tek yükleyebilirsiniz.

ayrıca, Visual Studio 2015 ve önceki sürümlerde NuGet Paket Yöneticisi eksikse, araçlar uzantılar ve güncelleştirmeler... ' ı işaretleyin ve NuGet Paket Yöneticisi uzantısını arayın. Visual Studio uzantılar yükleyicisini kullanamsanız, uzantıyı doğrudan ' den indirebilirsiniz https://dist.nuget.org/index.html .

Paket Yöneticisi konsolu şu anda Mac için Visual Studio ile kullanılamaz. ancak eşdeğer komutlar, NuGet clıaracılığıyla kullanılabilir. Mac için Visual Studio, NuGet paketlerini yönetmek için bir kullanıcı arabirimine sahiptir. bkz. projenize NuGet paket ekleme.

Paket Yöneticisi konsolu Visual Studio Code dahil değildir.

Paket Yöneticisi konsolunu genişletme

Bazı paketler konsol için yeni komutlar yükler. örneğin, MvcScaffoldingScaffold aşağıda gösterildiği gibi, ASP.NET MVC denetleyicileri ve görünümleri üreten komutlar oluşturur:

MvcScaffold yükleme ve kullanma

NuGet PowerShell profili ayarlama

PowerShell profili, PowerShell kullandığınızda yaygın olarak kullanılan komutların kullanılabilmesini sağlar. NuGet, genellikle aşağıdaki konumda bulunan NuGet özgü bir profili destekler:

% UserProfile% \Documents\WindowsPowerShell\NuGet_profile.ps1

Profili bulmak için konsola şunu yazın $profile :

$profile
C:\Users\<user>\Documents\WindowsPowerShell\NuGet_profile.ps1

daha fazla ayrıntı için Windows PowerShell profillerbölümüne bakın.

Konsolda nuget.exe CLı 'yi kullanma

clı 'yı Paket Yöneticisi konsolunda kullanılabilir hale getirmek için, NuGet ' i . Konsoldan komut satırı paketi:

# Other versions are available, see https://www.nuget.org/packages/NuGet.CommandLine/
Install-Package NuGet.CommandLine -Version 4.4.1