SYSLIB0005: Genel derleme önbelleği (GAC) desteklenmiyor
.NET Core ve .NET 5 ve sonraki sürümleri, .NET Framework'te mevcut olan genel derleme önbelleği (GAC) kavramını ortadan kaldırır. Geliştiricileri bu API'lerden uzaklaştırmaya yardımcı olmak için GAC ile ilgili bazı API'ler .NET 5'ten başlayarak eski olarak işaretlenir. Bu API'lerin kullanılması derleme zamanında uyarı SYSLIB0005
oluşturur.
Aşağıdaki GAC ile ilgili API'ler eski olarak işaretlenir:
-
Kitaplıklar ve uygulamalar, her zaman .NET Core ve .NET 5+ ile döndürdüğünden
false
, çalışma zamanı davranışı hakkında belirlemeler yapmak için API'yi kullanmamalıdırGlobalAssemblyCache.
Geçici Çözümler
Uygulamanız özelliği sorgularsa GlobalAssemblyCache çağrıyı kaldırmayı göz önünde bulundurun. Değerini kullanarak GlobalAssemblyCache çalışma zamanında "GAC'de derleme"-akış ile "GAC'de olmayan derleme" akışı arasında seçim yaparsanız, akışın .NET 5+ uygulaması için hala anlamlı olup olmadığını yeniden düşünün.
Uyarıyı gizleme
Eski API'leri kullanmanız gerekiyorsa, uyarıyı kodda veya proje dosyanızda gizleyebilirsiniz.
Yalnızca tek bir ihlali engellemek için, önişlemci yönergelerini kaynak dosyanıza ekleyerek uyarıyı devre dışı bırakın ve sonra yeniden etkinleştirin.
// Disable the warning.
#pragma warning disable SYSLIB0005
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0005
Projenizdeki tüm SYSLIB0005
uyarıları engellemek için proje dosyanıza bir <NoWarn>
özellik ekleyin.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0005</NoWarn>
</PropertyGroup>
</Project>
Daha fazla bilgi için bkz . Uyarıları gizleme.