dotnet add package

Bu makale şunlar için geçerlidir: ✔️ .NET Core 3.1 SDK ve sonraki sürümler

Name

dotnet add package - Proje dosyasına paket başvurusu ekler veya güncelleştirir.

Özet

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

komutu, dotnet add package proje dosyasına paket başvurusu eklemek veya güncelleştirmek için uygun bir seçenek sağlar. komutunu çalıştırdığınızda, paketin projedeki çerçevelerle uyumlu olduğundan emin olmak için bir uyumluluk denetimi yapılır. Denetim başarılı olursa ve pakete proje dosyasında başvurulmazsa, proje dosyasına bir <PackageReference> öğe eklenir. Denetim geçerse ve pakete proje dosyasında zaten başvurulursa, <PackageReference> öğesi en son uyumlu sürüme güncelleştirilir. Proje dosyası güncelleştirildikten sonra dotnet restore çalıştırılır.

Örneğin, ToDo.csproj dosyasına ekleme Microsoft.EntityFrameworkCore aşağıdaki örneğe benzer bir çıkış üretir:

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

ToDo.csproj dosyası artık başvuruda bulunılan paket için bir <PackageReference> öğe içeriyor.

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

Örtük geri yükleme

, ve dotnet packgibi dotnet builddotnet newdotnet runbir geri yüklemenin gerçekleşmesini gerektiren tüm komutlar tarafından örtük olarak çalıştırıldığındandotnet publishdotnet test, komutunu çalıştırmanız dotnet restore gerekmez. Örtük geri yüklemeyi devre dışı bırakmak için seçeneğini kullanın --no-restore .

Komutdotnet restore, Azure DevOps Services veya geri yüklemenin ne zaman gerçekleştiğini açıkça denetlemesi gereken derleme sistemlerindeki sürekli tümleştirme derlemeleri gibi açıkça geri yüklemenin anlamlı olduğu bazı senaryolarda hala yararlıdır.

NuGet akışlarını yönetme hakkında bilgi için belgeleredotnet restore bakın.

Bağımsız değişkenler

  • PROJECT

    Proje dosyasını belirtir. Belirtilmezse, komut geçerli dizinde bir tane arar.

  • PACKAGE_NAME

    Eklenecek paket başvurusu.

Seçenekler

  • -f|--framework <FRAMEWORK>

    Yalnızca belirli bir çerçeveyi hedeflerken paket başvurusu ekler.

  • -?|-h|--help

    komutunun nasıl kullanılacağına ilişkin bir açıklama yazdırır.

  • --interactive

    Komutun durmasına ve kullanıcı girişini veya eylemini beklemesine izin verir. Örneğin, kimlik doğrulamasını tamamlamak için.

  • -n|--no-restore

    Geri yükleme önizlemesi ve uyumluluk denetimi gerçekleştirmeden bir paket başvurusu ekler.

  • --package-directory <PACKAGE_DIRECTORY>

    Paketlerin geri yükleneceği dizin. Varsayılan paket geri yükleme konumu Windows'da, macOS ve ~/.nuget/packages Linux'tadır%userprofile%\.nuget\packages. Daha fazla bilgi için bkz. NuGet'te genel paketleri, önbelleği ve geçici klasörleri yönetme.

  • --prerelease

    Yayın öncesi paketlerin yüklenmesine izin verir. .NET Core 5 SDK'sı ile kullanılabilir

  • -s|--source <SOURCE>

    Geri yükleme işlemi sırasında kullanılacak NuGet paket kaynağının URI'si.

  • -v|--version <VERSION>

    Paketin sürümü. Bkz. NuGet paketi sürümü oluşturma.

Örnekler

  • Projeye NuGet paketi ekleme Microsoft.EntityFrameworkCore :

    dotnet add package Microsoft.EntityFrameworkCore
    
  • Projeye paketin belirli bir sürümünü ekleme:

    dotnet add ToDo.csproj package Microsoft.Azure.DocumentDB.Core -v 1.0.0
    
  • Belirli bir NuGet kaynağını kullanarak paket ekleme:

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

Ayrıca bkz.