Konsola Menedżera pakietówPackage Manager Console

Konsola Menedżera pakietów NuGet jest wbudowana w programie Visual Studio na Windows w wersji 2012 i nowszych.The NuGet Package Manager Console is built into Visual Studio on Windows version 2012 and later. (Nie jest uwzględniona w programie Visual Studio for Mac lub Visual Studio Code.)(It is not included with Visual Studio for Mac or Visual Studio Code.)

Konsola umożliwia korzystanie z poleceń programu NuGet PowerShell można znaleźć, instalowanie, odinstalowywanie oraz aktualizowanie pakietów NuGet.The console lets you use NuGet PowerShell commands to find, install, uninstall, and update NuGet packages. Za pomocą konsoli jest konieczne w przypadku, gdy interfejs użytkownika Menedżera pakietów nie zapewnia sposób wykonania operacji.Using the console is necessary in cases where the Package Manager UI does not provide a way to perform an operation. Aby użyć nuget.exe poleceń w konsoli, zobacz przy użyciu nuget.exe interfejsu wiersza polecenia w konsoli.To use nuget.exe commands in the console, see Using the nuget.exe CLI in the console.

Na przykład Znajdowanie i instalowanie pakietu jest przeprowadzane za pomocą trzech prostych krokach:For example, finding and installing a package is done with three easy steps:

  1. Otwórz projekt/rozwiązanie w programie Visual Studio i Otwórz za pomocą konsoli Narzędzia > Menedżer pakietów NuGet > Konsola Menedżera pakietów polecenia.Open the project/solution in Visual Studio, and open the console using the Tools > NuGet Package Manager > Package Manager Console command.

  2. Znajdź pakiet, który chcesz zainstalować.Find the package you want to install. Jeśli znasz już to, przejdź do kroku 3.If you already know this, skip to step 3.

    # Find packages containing the keyword "elmah"
    Find-Package elmah
    
  3. Uruchom polecenia instalacji:Run the install command:

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

Ważne

Można również wykonać wszystkie operacje, które są dostępne w konsoli za pomocą interfejs wiersza polecenia NuGet.All operations that are available in the console can also be done with the NuGet CLI. Jednak polecenia konsoli działają w kontekście programu Visual Studio i zapisany projekt/rozwiązanie i często osiągnąć bardziej niż ich równoważne poleceń interfejsu wiersza polecenia.However, console commands operate within the context of Visual Studio and a saved project/solution and often accomplish more than their equivalent CLI commands. Na przykład instalowanie pakietu za pomocą konsoli dodaje odwołanie do projektu, natomiast nie obsługuje polecenia interfejsu wiersza polecenia.For example, installing a package through the console adds a reference to the project whereas the CLI command does not. Z tego powodu deweloperzy pracujący w programie Visual Studio zazwyczaj preferują przy użyciu konsoli dla interfejsu wiersza polecenia.For this reason, developers working in Visual Studio typically prefer using the console to the CLI.

Porada

Wiele operacji konsoli zależą od tego, rozwiązanie otwarte w programie Visual Studio o nazwie znanej ścieżce.Many console operations depend on having a solution opened in Visual Studio with a known path name. Jeśli masz niezapisane rozwiązanie lub żadne rozwiązanie nie zostanie wyświetlony błąd, "rozwiązania nie otwarcie lub nie zostały zapisane.If you have an unsaved solution, or no solution, you can see the error, "Solution is not opened or not saved. Upewnij się, że masz rozwiązanie otwarty i zapisany."Please ensure you have an open and saved solution." Oznacza to, że konsoli nie można ustalić folderu rozwiązania.This indicates that the console cannot determine the solution folder. Zapisywanie niezapisane rozwiązanie lub tworzenie i zapisywanie rozwiązania, jeśli nie masz otwarte, należy rozwiązać problem.Saving an unsaved solution, or creating and saving a solution if you don't have one open, should correct the error.

Otwieranie konsoli i formanty konsoliOpening the console and console controls

  1. Otwórz konsolę programu Visual Studio przy użyciu Narzędzia > Menedżer pakietów NuGet > Konsola Menedżera pakietów polecenia.Open the console in Visual Studio using the Tools > NuGet Package Manager > Package Manager Console command. Konsola jest okno programu Visual Studio, które mogą być ułożone umieszczony w dowolny sposób (zobacz dostosowywanie układów okien w programie Visual Studio).The console is a Visual Studio window that can be arranged and positioned however you like (see Customize window layouts in Visual Studio).

  2. Domyślnie polecenia konsoli działają względem źródła określonego pakietu i projektu jako zestawu w formancie w górnej części okna:By default, console commands operate against a specific package source and project as set in the control at the top of the window:

    Formanty Konsola Menedżera pakietów dla projektów i źródła pakietu

  3. Wybór źródła pakietu inny projekt i/lub zmienia te ustawienia domyślne używane przy kolejnych poleceniach.Selecting a different package source and/or project changes those defaults for subsequent commands. Aby overrride tych ustawień bez zmiany ustawień domyślnych, większość używanych poleceń obsługiwać -Source i -ProjectName opcje.To overrride these settings without changing the defaults, most commands support -Source and -ProjectName options.

  4. Aby zarządzać źródła pakietu, wybierz ikonę koła zębatego.To manage package sources, select the gear icon. Jest to skrót do Narzędzia > Opcje > Menedżer pakietów NuGet > źródeł pakietów okno dialogowe, zgodnie z opisem na interfejs użytkownika Menedżera pakietów strony.This is a shortcut to the Tools > Options > NuGet Package Manager > Package Sources dialog box as described on the Package Manager UI page. Ponadto kontrolka selektora projektów po prawej stronie Czyści zawartość konsoli programu:Also, the control to the right of the project selector clears the console's contents:

    Ustawienia konsoli Menedżera pakietów i wyczyść formantów

  5. Po prawej stronie przycisku przerywa działanie polecenia długoterminowych.The rightmost button interrupts a long-running command. Aby na przykład uruchomić Get-Package -ListAvailable -PageSize 500 zawiera listę pakietów pierwszych 500 na domyślnego źródła (np. nuget.org), który może potrwać kilka minut.For example, running Get-Package -ListAvailable -PageSize 500 lists the top 500 packages on the default source (such as nuget.org), which could take several minutes to run.

    Kontrolka stop Konsola Menedżera pakietów

Instalowanie pakietuInstalling a package

# 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

Zobacz Install-Package.See Install-Package.

Instalowanie pakietu w konsoli wykonuje te same czynności, zgodnie z opisem na co się dzieje po zainstalowaniu pakietu, z następującymi dodatkami:Installing a package in the console performs the same steps as described on What happens when a package is installed, with the following additions:

  • Konsoli są wyświetlane w odpowiednich postanowieniach licencyjnych w jego oknie dorozumianych umowy.The Console displays applicable license terms in its window with implied agreement. Jeśli nie akceptujesz postanowień, należy odinstalować pakiet natychmiast.If you do not agree to the terms, you should uninstall the package immediately.
  • Również odwołanie do pakietu są dodawane do pliku projektu i pojawia się w Eksploratora rozwiązań w obszarze odwołania węzła, musisz zapisać projekt, aby zobaczyć zmiany w pliku projektu bezpośrednio.Also a reference to the package is added to the project file and appears in Solution Explorer under the References node, you need to save the project to see the changes in the project file directly.

Odinstalowywanie pakietuUninstalling a package

# 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

Zobacz Odinstaluj pakiet.See Uninstall-Package. Użyj Get-Package aby zobaczyć wszystkie pakiety, które obecnie zainstalowana na projekt domyślny, jeśli chcesz znaleźć identyfikatora.Use Get-Package to see all packages currently installed in the default project if you need to find an identifier.

Odinstalowywanie pakietu wykonuje następujące czynności:Uninstalling a package performs the following actions:

  • Usuwa odwołania do pakietu z projektu (i jest używany format niezależnie od zarządzania).Removes references to the package from the project (and whatever management format is in use). Odwołania nie są wyświetlane w Eksploratora rozwiązań.References no longer appear in Solution Explorer. (Może być konieczne ponownie skompiluj projekt, aby zobaczyć, że usuwane z Bin folderu.)(You might need to rebuild the project to see it removed from the Bin folder.)
  • Odwraca wszelkie zmiany wprowadzone do app.config lub web.config gdy pakiet został zainstalowany.Reverses any changes made to app.config or web.config when the package was installed.
  • Zależności usuwa wcześniej zainstalowane nie pozostałe pakiety użycia tych zależności.Removes previously-installed dependencies if no remaining packages use those dependencies.

Aktualizowanie pakietuUpdating a package

# 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

Zobacz Get-Package i pakiet aktualizacjiSee Get-Package and Update-Package

Znajdowanie pakietuFinding a package

# 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

Zobacz Znajdź pakiet.See Find-Package. W programie Visual Studio 2013 i starszych, użyj Get-Package zamiast tego.In Visual Studio 2013 and earlier, use Get-Package instead.

Dostępność w konsoli programuAvailability of the console

W programie Visual Studio 2017 Menedżer pakietów NuGet i NuGet są automatycznie instalowane po zaznaczeniu innego. Obciążenia związane z NET; można także zainstalować je oddzielnie, sprawdzając poszczególne składniki > Kod Narzędzia > Menedżer pakietów NuGet opcji w Instalatorze programu Visual Studio 2017.In Visual Studio 2017, NuGet and the NuGet Package Manager are automatically installed when you select any .NET-related workloads; you can also install it individually by checking the Individual components > Code tools > NuGet package manager option in the Visual Studio 2017 installer.

Ponadto jeśli masz Brak Menedżera pakietów NuGet w programie Visual Studio 2015 i starszych, sprawdź Narzędzia > rozszerzenia i aktualizacje... i wyszukaj rozszerzenia Menedżera pakietów NuGet.Also, if you're missing the NuGet Package Manager in Visual Studio 2015 and earlier, check Tools > Extensions and Updates... and search for the NuGet Package Manager extension. Jeśli nie możesz używać Instalator rozszerzenia programu Visual Studio, możesz pobrać rozszerzenia bezpośrednio z https://dist.nuget.org/index.html .If you're unable to use the extensions installer in Visual Studio, you can download the extension directly from https://dist.nuget.org/index.html.

Konsola Menedżera pakietów nie jest obecnie dostępne w programie Visual Studio dla komputerów Mac.The Package Manager Console is not presently available with Visual Studio for Mac. Równoważne polecenia są jednak dostępne za pośrednictwem interfejs wiersza polecenia NuGet.The equivalent commands, however, are available through the NuGet CLI. Program Visual Studio for Mac ma interfejs użytkownika zarządzania pakietami NuGet.Visual Studio for Mac does have a UI for managing NuGet packages. Zobacz pakietu w tym NuGet w projekcie.See Including a NuGet package in your project.

Konsola Menedżera pakietów nie jest uwzględniona w programie Visual Studio Code.The Package Manager Console is not included with Visual Studio Code.

Rozszerzanie Konsola Menedżera pakietówExtending the Package Manager Console

Niektóre pakiety instalują nowe polecenia do konsoli.Some packages install new commands for the console. Na przykład MvcScaffolding tworzy poleceń, takich jak Scaffold pokazano poniżej, które mają widoków i kontrolerów platformy ASP.NET MVC:For example, MvcScaffolding creates commands like Scaffold shown below, which generates ASP.NET MVC controllers and views:

Zainstalowanie i używanie MvcScaffold

Konfigurowanie profilu NuGet programu PowerShellSetting up a NuGet PowerShell profile

Profil programu PowerShell umożliwia udostępnianie często używanych poleceń w dowolnym miejscu przy użyciu programu PowerShell.A PowerShell profile lets you make commonly-used commands available wherever you use PowerShell. NuGet obsługuje profilu specyficzne dla NuGet, zwykle znajdują się w następującej lokalizacji:NuGet supports a NuGet-specific profile typically found at the following location:

%UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1

Aby znaleźć profilu, wpisz $profile w konsoli:To find the profile, type $profile in the console:

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

Aby uzyskać więcej informacji, zapoznaj się programu Windows PowerShell profile.For more details, refer to Windows PowerShell Profiles.

Za pomocą nuget.exe interfejsu wiersza polecenia w konsoli programuUsing the nuget.exe CLI in the console

Zapewnienie nuget.exe interfejsu wiersza polecenia dostępne w konsoli Menedżera pakietów Zainstaluj NuGet.CommandLine pakietu z poziomu konsoli:To make the nuget.exe CLI available in the Package Manager Console, install the NuGet.CommandLine package from the console:

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