dotnet add package

Ten artykuł dotyczy: ✔️ zestaw .NET Core 3.1 SDK i nowsze wersje

Nazwa

dotnet add package — Dodaje lub aktualizuje odwołanie do pakietu w pliku projektu.

Streszczenie

dotnet add [<PROJECT>] package <PACKAGE_NAME>
    [-f|--framework <FRAMEWORK>] [--interactive]
    [-n|--no-restore] [--package-directory <PACKAGE_DIRECTORY>]
    [--prerelease] [-s|--source <SOURCE>] [-v|--version <VERSION>]

dotnet add package -h|--help

Opis

Polecenie dotnet add package zapewnia wygodną opcję dodawania lub aktualizowania odwołania do pakietu w pliku projektu. Po uruchomieniu polecenia jest sprawdzana zgodność, aby upewnić się, że pakiet jest zgodny z platformami w projekcie. Jeśli sprawdzanie przebiegnie pomyślnie, a pakiet nie jest przywoływany w pliku projektu, <PackageReference> element zostanie dodany do pliku projektu. Jeśli sprawdzanie zakończy się pomyślnie, a pakiet jest już przywołyny w pliku projektu, <PackageReference> element zostanie zaktualizowany do najnowszej zgodnej wersji. Po zaktualizowaniu pliku projektu zostanie uruchomione przywracanie dotnet .

Na przykład dodanie Microsoft.EntityFrameworkCore do pliku ToDo.csproj generuje dane wyjściowe podobne do następującego przykładu:

  Determining projects to restore...
  Writing C:\Users\username\AppData\Local\Temp\tmp24A8.tmp
info : Adding PackageReference for package 'Microsoft.EntityFrameworkCore' into project 'C:\ToDo\ToDo.csproj'.
info :   CACHE https://api.nuget.org/v3/registration5-gz-semver2/microsoft.entityframeworkcore/index.json
info :   GET https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/516521bf-6417-457e-9a9c-0a4bdfde03e7/nuget/v3/registrations2-semver2/microsoft.entityframeworkcore/index.json
info :   CACHE https://api.nuget.org/v3/registration5-gz-semver2/microsoft.entityframeworkcore/page/0.0.1-alpha/3.1.3.json
info :   CACHE https://api.nuget.org/v3/registration5-gz-semver2/microsoft.entityframeworkcore/page/3.1.4/7.0.0-preview.2.22153.1.json
info :   CACHE https://api.nuget.org/v3/registration5-gz-semver2/microsoft.entityframeworkcore/page/7.0.0-preview.3.22175.1/7.0.0-preview.3.22175.1.json
info :   NotFound https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/516521bf-6417-457e-9a9c-0a4bdfde03e7/nuget/v3/registrations2-semver2/microsoft.entityframeworkcore/index.json 257ms
info : Restoring packages for C:\ToDo\ToDo.csproj...
info : Package 'Microsoft.EntityFrameworkCore' is compatible with all the specified frameworks in project 'C:\ToDo\ToDo.csproj'.
info : PackageReference for package 'Microsoft.EntityFrameworkCore' version '6.0.4' added to file 'C:\ToDo\ToDo.csproj'.
info : Writing assets file to disk. Path: C:\ToDo\obj\project.assets.json
log  : Restored C:\ToDo\ToDo.csproj (in 171 ms).

Plik ToDo.csproj zawiera <PackageReference> teraz element dla pakietu, do których odwołuje się odwołanie.

<PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.4" />

Niejawne przywracanie

Nie trzeba uruchamiać, dotnet restore ponieważ jest ona uruchamiana niejawnie przez wszystkie polecenia, które wymagają przywrócenia, takie jak dotnet new, dotnet build, dotnet run, , dotnet test, , dotnet publishi dotnet pack. Aby wyłączyć niejawne przywracanie, użyj --no-restore opcji .

Polecenie dotnet restore jest nadal przydatne w niektórych scenariuszach, w których jawne przywracanie ma sens, takie jak kompilacje ciągłej integracji w Azure DevOps Services lub w systemach kompilacji, które muszą jawnie kontrolować po zakończeniu przywracania.

Aby uzyskać informacje na temat zarządzania kanałami informacyjnymi NuGet, zobacz dokumentacjędotnet restore.

Argumenty

  • PROJECT

    Określa plik projektu. Jeśli nie zostanie określony, polecenie przeszukuje bieżący katalog dla jednego.

  • PACKAGE_NAME

    Odwołanie do pakietu do dodania.

Opcje

  • -f|--framework <FRAMEWORK>

    Dodaje odwołanie do pakietu tylko wtedy, gdy jest przeznaczona dla określonej platformy.

  • -?|-h|--help

    Wyświetla opis sposobu używania polecenia.

  • --interactive

    Umożliwia zatrzymanie polecenia i oczekiwanie na wprowadzenie lub działanie użytkownika. Na przykład w celu ukończenia uwierzytelniania.

  • -n|--no-restore

    Dodaje odwołanie do pakietu bez przeprowadzania sprawdzania podglądu przywracania i zgodności.

  • --package-directory <PACKAGE_DIRECTORY>

    Katalog, w którym można przywrócić pakiety. Domyślną lokalizacją przywracania pakietów jest %userprofile%\.nuget\packages system Windows i ~/.nuget/packages w systemach macOS i Linux. Aby uzyskać więcej informacji, zobacz Zarządzanie globalnymi pakietami, pamięcią podręczną i folderami tymczasowymi w programie NuGet.

  • --prerelease

    Umożliwia zainstalowanie pakietów wstępnych. Dostępny od zestawu .NET Core 5 SDK

  • -s|--source <SOURCE>

    Identyfikator URI źródła pakietu NuGet do użycia podczas operacji przywracania.

  • -v|--version <VERSION>

    Wersja pakietu. Zobacz Przechowywanie wersji pakietów NuGet.

Przykłady

  • Dodaj Microsoft.EntityFrameworkCore pakiet NuGet do projektu:

    dotnet add package Microsoft.EntityFrameworkCore
    
  • Dodaj określoną wersję pakietu do projektu:

    dotnet add ToDo.csproj package Microsoft.Azure.DocumentDB.Core -v 1.0.0
    
  • Dodaj pakiet przy użyciu określonego źródła NuGet:

    dotnet add package Microsoft.AspNetCore.StaticFiles -s https://dotnet.myget.org/F/dotnet-core/api/v3/index.json
    

Zobacz też