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