dotnet add package

Ez a cikk a következő kiadásokra vonatkozik: ✔️ .NET Core 3.1 SDK és újabb verziók

Name

dotnet add package – Csomaghivatkozást ad hozzá vagy frissít egy projektfájlban.

Áttekintés

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

Description

A dotnet add package parancs kényelmes lehetőséget biztosít egy csomaghivatkozás hozzáadására vagy frissítésére egy projektfájlban. A parancs futtatásakor kompatibilitás-ellenőrzést végez annak ellenőrzéséhez, hogy a csomag kompatibilis-e a projekt keretrendszereivel. Ha az ellenőrzés sikeres, és a csomagra nincs hivatkozás a projektfájlban, a rendszer hozzáad egy <PackageReference> elemet a projektfájlhoz. Ha az ellenőrzés sikeres, és a csomag már szerepel a projektfájlban, az <PackageReference> elem a legújabb kompatibilis verzióra frissül. A projektfájl frissítése után a dotnet visszaállítása lefut.

A ToDo.csproj fájlhoz való hozzáadás Microsoft.EntityFrameworkCore például az alábbi példához hasonló kimenetet eredményez:

  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).

A ToDo.csproj fájl most már tartalmaz egy <PackageReference> elemet a hivatkozott csomaghoz.

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

Implicit visszaállítás

Nem kell futtatnia dotnet restore , mert az összes olyan parancs implicit módon fut, amely visszaállítást igényel, például dotnet new, dotnet build, dotnet run, dotnet test, dotnet publishés dotnet pack. Az implicit visszaállítás letiltásához használja a --no-restore lehetőséget.

A dotnet restore parancs akkor is hasznos, ha az explicit visszaállításnak van értelme, például folyamatos integrációs buildek az Azure DevOps Servicesben vagy olyan buildrendszerekben, amelyeknek explicit módon szabályozni kell a visszaállítást.

A NuGet-hírcsatornák kezelésével kapcsolatos információkért tekintse meg a dokumentációtdotnet restore.

Argumentumok

  • PROJECT

    Megadja a projektfájlt. Ha nincs megadva, a parancs az aktuális könyvtárban keres egyet.

  • PACKAGE_NAME

    A hozzáadni kívánt csomaghivatkozás.

Beállítások

  • -f|--framework <FRAMEWORK>

    Csak egy adott keretrendszer megcélzása esetén ad hozzá csomaghivatkozást.

  • -?|-h|--help

    A parancs használatának leírását nyomtatja ki.

  • --interactive

    Lehetővé teszi, hogy a parancs leálljon, és várja meg a felhasználói bevitelt vagy műveletet. Például a hitelesítés befejezéséhez.

  • -n|--no-restore

    Csomaghivatkozás hozzáadása visszaállítási előzetes verzió és kompatibilitás-ellenőrzés nélkül.

  • --package-directory <PACKAGE_DIRECTORY>

    A könyvtár, ahol a csomagokat vissza kell állítani. Az alapértelmezett csomag-visszaállítási hely Windows~/.nuget/packages, macOS és Linux rendszeren van%userprofile%\.nuget\packages. További információ: A globális csomagok, gyorsítótárak és ideiglenes mappák kezelése a NuGetben.

  • --prerelease

    Lehetővé teszi az előzetes csomagok telepítését. A .NET Core 5 SDK óta elérhető

  • -s|--source <SOURCE>

    A visszaállítási művelet során használandó NuGet-csomagforrás URI-ja.

  • -v|--version <VERSION>

    A csomag verziója. Lásd: NuGet-csomagok verziószámozása.

Példák

  • NuGet-csomag hozzáadása Microsoft.EntityFrameworkCore projekthez:

    dotnet add package Microsoft.EntityFrameworkCore
    
  • Csomag adott verziójának hozzáadása egy projekthez:

    dotnet add ToDo.csproj package Microsoft.Azure.DocumentDB.Core -v 1.0.0
    
  • Csomag hozzáadása egy adott NuGet-forrás használatával:

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

Lásd még