Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk a következő verziókra vonatkozik: ✔️ .NET 6 SDK és újabb verziók
Név
dotnet package add – Csomaghivatkozás hozzáadása vagy frissítése egy projektfájlban.
Megjegyzés
Ha .NET 9 SDK-t vagy korábbi verziót használ, használja helyette az "első ige" űrlapot (dotnet add package). A "főnév első" űrlap a .NET 10-ben lett bevezetve. További információ: Konzisztensebb parancsrend.
Áttekintés
dotnet package add <PACKAGE_NAME>
[-f|--framework <FRAMEWORK>] [--interactive] [--project <PROJECT>]
[-n|--no-restore] [--package-directory <PACKAGE_DIRECTORY>]
[--prerelease] [-s|--source <SOURCE>] [-v|--version <VERSION>]
dotnet package add -h|--help
Leírás
A dotnet package add 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éssel ellenőrzi, hogy a csomag kompatibilis-e a projekt keretrendszereivel. Ha az ellenőrzés sikeres, és a csomag nem szerepel a projektfájlban, a program 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 rendszer futtatja a dotnet-visszaállítást .
A Microsoft.EntityFrameworkCore való hozzáadás 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" />
Ha a projekt központi csomagkezelésre (CPM) van előkészítve, a <PackageVersion> program hozzáadja/frissíti az Directory.Packages.props file elemet, és hozzáadja az <PackageReference> elemet a projektfájlhoz.
A következő forgatókönyvek jelenleg támogatottak. Ezek a példák feltételezik, hogy a legújabb verzió Microsoft.EntityFrameworkCore a 6.0.4. A CPM-hez kapcsolódó további forgatókönyveket ebben a tervezési specifikációban dokumentáljuk.
1. forgatókönyv: <PackageReference> nem létezik a projektfájlban, <PackageVersion> az elem nem létezik a Directory.Packages.props file, és a verzió argumentum nem lesz átadva a parancssorból.
A parancssori felület parancsa, amely végrehajtva van: dotnet package add Microsoft.EntityFrameworkCore --project ToDo.csproj
Az <PackageVersion> elem hozzá lesz adva a Directory.Packages.props file.
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="6.0.4" />
Az <PackageReference> elem hozzá lesz adva a projektfájlhoz.
<PackageReference Include="Microsoft.EntityFrameworkCore" />
2. forgatókönyv: <PackageReference> nem létezik a projektfájlban, <PackageVersion> az elem nem létezik a Directory.Packages.props file, és a verzió argumentum a parancssorból lesz átadva.
A parancssori felület parancsa, amely végrehajtva van: dotnet package add Microsoft.EntityFrameworkCore --version 5.0.4 --project ToDo.csproj
Az <PackageVersion> elem hozzá lesz adva a Directory.Packages.props file.
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="5.0.4" />
Az <PackageReference> elem hozzá lesz adva a projektfájlhoz.
<PackageReference Include="Microsoft.EntityFrameworkCore" />
3. forgatókönyv: <PackageReference> nem létezik a projektfájlban, <PackageVersion> az elem a Directory.Packages.props file, és a verzió argumentum nem kerül át a parancssorból.
A parancssori felület parancsa, amely végrehajtva van: dotnet package add Microsoft.EntityFrameworkCore --project ToDo.csproj
Az <PackageVersion> elem hozzá lesz adva a Directory.Packages.props file.
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="6.0.4" />
Az <PackageReference> elem hozzá lesz adva a projektfájlhoz.
<PackageReference Include="Microsoft.EntityFrameworkCore" />
4. forgatókönyv: <PackageReference> nem létezik a projektfájlban, <PackageVersion> az elem a Directory.Packages.props file, és a verzió argumentumot a parancssorból adja át.
A parancssori felület parancsa, amely végrehajtva van: dotnet package add Microsoft.EntityFrameworkCore --version 5.0.4 --project ToDo.csproj
Az <PackageVersion> elem hozzá lesz adva a Directory.Packages.props file.
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="5.0.4" />
Az <PackageReference> elem hozzá lesz adva a projektfájlhoz.
<PackageReference Include="Microsoft.EntityFrameworkCore" />
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 továbbra is hasznos bizonyos esetekben, amikor a explicit visszaállításnak van értelme, például folyamatos integrációs buildeket az Azure DevOps Services vagy olyan buildrendszerekben, amelyeknek explicit módon kell szabályozni a visszaállítást.
További információ a NuGet-hírcsatornák kezeléséről: dotnet restore dokumentáció.
Érvek
PROJECTMegadja a projektfájlt. Ha nincs megadva, a parancs az aktuális könyvtárban keres egyet.
PACKAGE_NAMEA 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|--helpA parancs használatának leírását nyomtatja ki.
-
--interactiveLehetővé teszi, hogy a parancs leálljon, és várja meg a felhasználói bemenetet vagy műveletet. Például a hitelesítés befejezéséhez.
-n|--no-restoreCsomaghivatkozá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 csomagok visszaállításának könyvtára. Az alapértelmezett csomag-visszaállítási hely Windows rendszeren, macOS és
%userprofile%\.nuget\packagesLinux rendszeren található~/.nuget/packages. További információ: A NuGet globális csomagjainak, gyorsítótárának és ideiglenes mappáinak kezelése.--prereleaseLehetővé teszi a prerelease-csomagok telepítését.
-s|--source <SOURCE>A Visszaállítási művelet során használni kívánt NuGet-csomagforrás URI-ja.
-v|--version <VERSION>A csomag verziója. Lásd a NuGet-csomag verziószámozását.
Példák
NuGet-csomag hozzáadása
Microsoft.EntityFrameworkCoreprojekthez:dotnet package add Microsoft.EntityFrameworkCoreCsomag adott verziójának hozzáadása egy projekthez:
dotnet package add Microsoft.Azure.DocumentDB.Core -v 1.0.0 --project ToDo.csprojCsomag hozzáadása egy adott NuGet-forrás használatával:
dotnet package add Microsoft.AspNetCore.StaticFiles -s https://dotnet.myget.org/F/dotnet-core/api/v3/index.json