.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 öğenin içine öğe <PackageReference><ItemGroup> 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 öğesini proje dosyasından kaldırın <PackageReference> .

CLI kullanma

Bağımlılık eklemek için aşağıdaki örnekte gösterildiği gibi komutunu çalıştırın dotnet add package :

dotnet add package Microsoft.EntityFrameworkCore

Bir bağımlılığı kaldırmak için aşağıdaki örnekte gösterildiği gibi komutunu çalıştırın dotnet remove package :

dotnet remove package Microsoft.EntityFrameworkCore

İpuçları

  • Başvuruda bulunılan paketin .targets veya .props dosyasına geri yükleme işlemine giriş eklemeyin. Bu girişler öğeleri, öznitelikleri, ExcludeAssets kullanılacak NuGet akışlarını veya diğer NuGet yapılandırmasını içerebilirPackageReference. 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.

  • ASP.NET API'lerini bir konsol uygulamasında veya sınıf kitaplığında 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.