Aracılığıyla paylaş


.NET uygulamalarında paket bağımlılıklarını yönetme

Bu makalede, proje dosyasını düzenleyerek veya CLI kullanarak paket bağımlılıklarının nasıl ekleneceği ve kaldırılacağı açıklanmaktadır.

<PackageReference> öğesi

<PackageReference> Proje dosyası öğesi aşağıdaki yapıya sahiptir:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" />

Include özniteliği, projeye eklenecek paketin kimliğini belirtir. Version özniteliği, alınacak sürümü belirtir. Sürümler NuGet sürüm kurallarına göre belirtilir.

Aşağıdaki örnekte gösterildiği gibi yalnızca belirli bir hedefte kullanılabilen bir bağımlılık eklemek için koşulları kullanın:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />

Yukarıdaki örnekteki bağımlılık yalnızca söz konusu hedef için derleme gerçekleştiriliyorsa geçerli olacaktır. $(TargetFramework) koşulunda, projede ayarlanan bir MSBuild özelliğidir. En yaygın .NET uygulamaları için bunu yapmanız gerekmez.

Bağımlılık ekleme ve kaldırma

Proje dosyanızı düzenleyerek veya .NET CLI komutları aracılığıyla bağımlılıkları ekleyebilir ve kaldırabilirsiniz.

Proje dosyasını düzenleme

Bağımlılık eklemek için bir <PackageReference> öğesini <ItemGroup> öğesinin içine ekleyin. Mevcut <ItemGroup> bir öğeye ekleyebilir veya yeni bir tane oluşturabilirsiniz.

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    ...
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.2" />
  </ItemGroup>

</Project>

Bir bağımlılığı kaldırmak için, proje dosyasından <PackageReference> öğesini kaldırın.

CLI'yi kullan

Bağımlılık eklemek için aşağıdaki örnekte gösterildiği gibi komutunu çalıştırın dotnet package add . (.NET 9 veya önceki bir SDK sürümü kullanıyorsanız, bunun yerine formu kullanın dotnet add package .)

dotnet package add Microsoft.EntityFrameworkCore

Bir bağımlılığı kaldırmak için aşağıdaki örnekte gösterildiği gibi komutunu çalıştırın dotnet package remove . (.NET 9 veya önceki bir SDK sürümü kullanıyorsanız, bunun yerine formu kullanın dotnet remove package .)

dotnet package remove Microsoft.EntityFrameworkCore

İpuçları

  • Başvuruda bulunılan paketin .targets veya .props dosyasına geri yükleme işlemine giriş eklemeyin. Bu girişler PackageReference öğeleri, ExcludeAssets öznitelikleri, kullanılacak NuGet akışlarını veya diğer NuGet yapılandırmasını içerebilir. Paketlerden .targets ve .props dosyaları NuGet geri yükleme işlemi tamamlanana kadar kullanılmaz. Geri yükleme için gereken her şeyin paket bağımlılığı değil projenin kendi proje dosyasında veya .targets dosyasında olması gerekir.

  • Konsol uygulamasında veya sınıf kitaplığında ASP.NET API'leri kullanmak istiyorsanız proje dosyanıza bir FrameworkReference öğesi ekleyin:

    <FrameworkReference Include="Microsoft.AspNetCore.App" />

    Daha fazla bilgi için bkz. ASP.NET Core paylaşılan çerçevesini kullanma.

Ayrıca bkz.